Full playlist on the PIC microcontroller Programming kzbin.info/www/bejne/gYSsZ5mwhLWJsJI If there is anything you would like to see let me know.
@TheHollywoodcole4 жыл бұрын
I'm working with a PIC18F45K50 and would like to read data from a temperature / humidity sensor, DHT11, and display that data on a 2 x 16 LCD as well as print it in a terminal window on a PC via a ESP82. You're videos are awesome, thank you!
@apostolosdragoumanos4 жыл бұрын
MPU6050 with SPI or any type of sensor connected to SPI Thanks nice tutorials!!
@BinderTronics4 жыл бұрын
Probably going to be one of the LS6 IMUs. Do you mean MPU6000 as far as I can remember the MPU6050 is I2C (TWI) only.
@apostolosdragoumanos4 жыл бұрын
@@BinderTronics Yes you are correct, MPU6050 has only I2C, but i like also the LS6 with SPI. Good job i really like your videos a lot.
@AlbertRei34243 жыл бұрын
Don't hesitate to spend more time on the coding, you were very fast here.... Thx for the tutorial
@Jayeowot4 жыл бұрын
Nice tutorials
@TymerTopCat4 жыл бұрын
This is an awesome video thanks as it hard to find Examples for MicroChip and LCD. Currently I'm on Tutorial #4, so it's going to take me awhile to get to this LCD video in detail. I would love to see a video that could demonstrate how to get some output when testing some code. Your LCD code will be very useful for confirming that the C methods are working, however it would take significant effort to connect an LCD display to the prototype every time I want to test methods that calculate things. How is this done in the embedded world? I feel crippled without being able to print out results from methods that I write. What are our options in the embedded world? For Example, Since I am a C# developer I would typically write a method and then call the method and print something out, to confirm that the method is doing what I expect, this is super easy when using C# Console.WriteLine(); in C it would be a simple printf(""); statement. Here is an example of what I mean (It's in C#) private void main( ) { String s = GetTimeStamp( DateTime.Now ); // Method call returns String. Console.WriteLine( s ); // Easy to print value and confirm code works. String result; GetTimeStamp( DateTime.Now, out result ); // Here I pass a reference called result (pointer) Console.WriteLine( result ); // Easy to print value and confirm code works. } private String GetTimeStamp( DateTime date) { return date.ToString( ); } private void GetTimeStamp( DateTime date, out String timeString ) { timeString = date.ToString( ); }
@BinderTronics4 жыл бұрын
#7 kzbin.info/www/bejne/poHQdoqifr51r9E and #13 kzbin.info/www/bejne/hWWsoaqdjM2kgrs covers this. The norm is to use the UART. This is slow but each architecture has its own tricks eg. ARM based micros has a SWI interface that is DMA witch is much faster than sending data via UART.
@kefiltonouewa7164 жыл бұрын
Could you show how a PWM is used for a DC motor?
@Actinuon Жыл бұрын
Question about the contrast pin, I harvested a LCD display out of a broken flow transmitter, it worked fine when it was still in the transmitter. I can get the thing to print code, seems all good. But the contrast is super weak, the strongest I can get it is at 0V. The datasheet is not explicit about it, but shows two circuits for the pin (VL on my display), 1. a voltage divider 5V to GND, 2. a voltage divider +5V to -5V. There are some other timing diagrams that seem to suggest negative voltage on the pin. Do some of these strictly require negative voltage for the contrast?
@Actinuon Жыл бұрын
Well I answered my own question, absolutely they do. Built a charge pump, and -1V makes it come in clear as day. -4 and full dark. Thanks for these videos!
@BinderTronics Жыл бұрын
I did not want to get into the nitty gritty of how the crystals actually work nor do I know enough to give accurate information. Like you found it is up to the manufacture to decide and/or the composition of the crystals how the crystals will be polarize. You mention a datasheet. I am assuming that it is not the same driver chip as the one I am using I am also assuming it is a old device you salvaged from since using negative voltages have become very rare.
@Actinuon Жыл бұрын
@@BinderTronics It's not terribly ancient honestly. An old model though, plus it's using a bunch of funky inductance disturbances to calculate the flow of water through a flowtube, that being said it doesn't necessarily surprise me that they are making use of negative voltages with all the amplification of weak signals going on. And yeah, it isn't a hobbyist make, Hantronix it seems, but not a name on it. The only reason I kept it is that it had a header that fits my board. And it's a good excuse to dive back into hand coding. I'm a PLC programmer by trade, so it's a big mental shift.
@ethanarchambault21334 жыл бұрын
What font/color settings are you using? I really like the way it looks.
@BinderTronics4 жыл бұрын
Font: Courier New, Style: Regular, Size: 24. Can't remember how I set the colors.
@bharathkranjan88204 жыл бұрын
Super
@pietmatsobane67904 жыл бұрын
Hello .I created a global variable of uint8_t Data = 0x24; and in the main function, after clearing and setting position i used LCD_print(Data); I expected the LCD to print 36 i.e 0x24 , but instead it is printing out $ ..... I am confused because I thought LCD_print_string() is the one that would give such results. .... I'm sorry for asking these silly questions, I am a beginner. Thank you.
@BinderTronics4 жыл бұрын
for 36 do LCD_print(0x33); LCD_print(0x63); . It is explained at 10:56. You are printing the correct Characters for the 0x24 value. Otherwise lookup BDC hex format.
@pietmatsobane67904 жыл бұрын
@@BinderTronics ok Sir, thanks
@amanueltsehay16593 жыл бұрын
please for pic18f43k22
@BinderTronics3 жыл бұрын
My dude the microcontroller does not matter. If you can blink a led you can do this. Here is a hint compare the pinout between the pic18F43K22 and the PIC18F4520.