Long ago, other people run popular among chinese bootleggers, german designed component tester at exeeding specifications 24MHz using ubiquitous cristals - stable without problems, but requires little code editing and recompiling.
@tripplefives1402 - I do not think we will see AVRs go away anytime soon. There are still close to 280 8-bit varieties that are still in production, and that doesn't include other AVRs such as the 8/16-bit and 32-bit versions. Also, new AVRs are currently in development and are planned to be released in the near future. This would not be the case if there were plans to phase AVRs out. As an engineer, I have many FAE contacts for various manufacturers including Microchip (the manufacturer of AVRs), so if this were to be true, I would find out in short time. I believe this idea stemmed from the ATmega328 (popularly used in Arduinos) being moved from "In Production" to "Not Recommended for New Designs". This happened quite a while ago, and they still haven't moved that variant to "End of Life". The other variants of the '328, which include the '48, '88, and '168, are still in production. The '328 was to be replaced with the '328PB version, which is currently "In Production". Unfortunately, the '328PB is not being produced in a DIP package but can still be used on breadboards with a protoboard adapter. Until we start seeing AVRs moving from "In Production" to "Not Recommended for New Designs" in droves, I would not be concerned with them supposedly being "phased out". Thank you for your concern, and thanks for watching!
There was a step in the voltage of over a volt (not monotonic) at time stamp 4:18, please explain why this was not discussed as you mentioned, the power supply should be monotonic.
You are correct that there was a slight step in voltage that was not monotonic. This occurred at about 0.7V. What I failed to mention in the video is that the AVR that I am using has a power-on-reset that occurs at a minimum of 1.1V (1.4V typical and 1.6V maximum). because of this, any non-monotonic behavior below 1.1V during startup should not be an issue as long as the power-up from 1.1V on up to the operating voltage is monotonic. If there are any issues then there are several options to rectify the situation, including enabling the brown-out voltage detector or using an external MCU supervisor. The OKI-78SR-5 regulator that produced this step in voltage has been tested extensively by me, and I have not had any issues with power-up failures. Thanks for the comment!
At work when we went from 16mhz to 20mhz we found a random number of chips would not flash using FLIP (this is upto 40% of the device , even at the lowest 9600 baud rate. I tried everything (replacing the mpu/crystal/caps) and no luck. Get this, I found a old flip manual and there is "programming pairs", wth is that,,, it is pairs of mpu clock and programming rate that are happy, at 16mhz, almost all baud rates are fine, but jump to 20mhz and there is not one happy pair. How did I fix this, I connect a 30 to 130pf cap across the crystal (yep across it), this dramatically changes the freq (~40 to 50mhz) and it programs fine and verifies fine every time. Then remove the cap and all good. Thoughts? What I need is a programmer that goes lower than 9600baud (~8000baud), I tried one, it sorta worked, programmed and verified, but would not run the code. Where Atmel Flip does, Ideas/thoughts? TIA
Technically speaking, it is not "death", it is a filtering device mimicking the masks used during the great plague. Legend goes sir Isaac Newton discovered gravity while in lockdown during that period.
Another interesting and excellent video.. Nice to see you back again! Thanks for the warning about the power on ramp of cheap Chinese power supplies! Also I didn't see how the code could toggle the pin. You seem to be writing the same value to the port. I am unfamiliar with Atmel Studio and the AVR #defines. I expected you to write a '1' to the port, then delay, a '0' to the port then delay, just to make things clear for the viewer. However I have a sort of recollection that the AVR has a toggle register, but I googled and nothing came up. Found it now, writing to the PINx register results in a toggle of pins on PORTx. I am used to AVRs in the context of the Arduino world/GUI. They are a cheap, nicely designed microcontroller. It's always helpful to learn some of the lower level details. 👍
No, I did mean 1 Hertz (which is a 1 second period). Let me explain. One half Hertz (0.5 Hertz) would equate to a 2 second period (remember that frequency and period are reciprocals of each other, so 1/(0.5 Hertz) = 2 seconds), and if you watch the LED blinking in the video you will notice that it did not take 2 seconds for the LED to blink. It was blinking once each second. The period represents the amount of time before the pattern repeats. The pattern is to turn the LED on for 500ms then off for 500ms (the LED is toggled every 500ms using the PIN register toggle feature). So, the full pattern consists of 500ms ON plus 500ms OFF which equals 1 second (the period). Then taking the reciprocal of that gives us 1 Hertz (1/(1 second) = 1 Hertz). Hopefully that makes sense. Thanks for the comment!
As another commenter mentioned, it has to do with the PIN register. From the datasheet: "Writing a logic one to PINxn toggles the value of PORTxn, independent on the value of DDRxn." Therefore, each time I wrote a '1' to the PIN register, the output to the LED did in fact toggle. Thank you!
Hi! Just subscribed. I admit the thing that made me click the video thumbnail was seeing the mask. I thougth "This must be cool". Also I have a bunch of Atmega 328P lying around which I haven't been able to program because they don't have bootloader (I even have an AVR programmer).
You don't need bootloader if you program them directly using an ICE programmer (not installed in an Arduino for instance). I never use bootloader. But that's just my preference. Thanks for subscribing, and thanks for the comment!
Long ago, other people run popular among chinese bootleggers, german designed component tester at exeeding specifications 24MHz using ubiquitous cristals - stable without problems, but requires little code editing and recompiling.
Yes, some will overclock them, but I prefer to stay within specs. Thanks for watching!
Perfect level of weird and informative. I have a whole bag of avrs so definitely useful!
Glad to hear. Thank you and good luck with all the AVRs!
@tripplefives1402 - I do not think we will see AVRs go away anytime soon. There are still close to 280 8-bit varieties that are still in production, and that doesn't include other AVRs such as the 8/16-bit and 32-bit versions. Also, new AVRs are currently in development and are planned to be released in the near future. This would not be the case if there were plans to phase AVRs out. As an engineer, I have many FAE contacts for various manufacturers including Microchip (the manufacturer of AVRs), so if this were to be true, I would find out in short time. I believe this idea stemmed from the ATmega328 (popularly used in Arduinos) being moved from "In Production" to "Not Recommended for New Designs". This happened quite a while ago, and they still haven't moved that variant to "End of Life". The other variants of the '328, which include the '48, '88, and '168, are still in production. The '328 was to be replaced with the '328PB version, which is currently "In Production". Unfortunately, the '328PB is not being produced in a DIP package but can still be used on breadboards with a protoboard adapter. Until we start seeing AVRs moving from "In Production" to "Not Recommended for New Designs" in droves, I would not be concerned with them supposedly being "phased out". Thank you for your concern, and thanks for watching!
The amount of useful technical info is astounding, the process is great, detailed.
Thank you! Appreciate it!
Burgmann riding EE lecturer in a costume, what a cool channel!
We love those Burgmans! Thanks for the comment!
There was a step in the voltage of over a volt (not monotonic) at time stamp 4:18, please explain why this was not discussed as you mentioned, the power supply should be monotonic.
You are correct that there was a slight step in voltage that was not monotonic. This occurred at about 0.7V. What I failed to mention in the video is that the AVR that I am using has a power-on-reset that occurs at a minimum of 1.1V (1.4V typical and 1.6V maximum). because of this, any non-monotonic behavior below 1.1V during startup should not be an issue as long as the power-up from 1.1V on up to the operating voltage is monotonic. If there are any issues then there are several options to rectify the situation, including enabling the brown-out voltage detector or using an external MCU supervisor. The OKI-78SR-5 regulator that produced this step in voltage has been tested extensively by me, and I have not had any issues with power-up failures. Thanks for the comment!
At work when we went from 16mhz to 20mhz we found a random number of chips would not flash using FLIP (this is upto 40% of the device , even at the lowest 9600 baud rate. I tried everything (replacing the mpu/crystal/caps) and no luck. Get this, I found a old flip manual and there is "programming pairs", wth is that,,, it is pairs of mpu clock and programming rate that are happy, at 16mhz, almost all baud rates are fine, but jump to 20mhz and there is not one happy pair. How did I fix this, I connect a 30 to 130pf cap across the crystal (yep across it), this dramatically changes the freq (~40 to 50mhz) and it programs fine and verifies fine every time. Then remove the cap and all good. Thoughts?
What I need is a programmer that goes lower than 9600baud (~8000baud), I tried one, it sorta worked, programmed and verified, but would not run the code. Where Atmel Flip does, Ideas/thoughts? TIA
I like how this guy dresses up like death and then gives a wholesome and educational presentation
Thank you. I do my best!
Technically speaking, it is not "death", it is a filtering device mimicking the masks used during the great plague. Legend goes sir Isaac Newton discovered gravity while in lockdown during that period.
Great chanel! It deserves more attention!
I appreciate that! Thanks!
Thank you for the /8 fuse trick. I didn't know we could change this on the fly.
;To be sure to run without clk division, working awesome.
ldi R16, $80
sts CLKPR, R16
clr R16
sts CLKPR, R16
Glad it helped! Thanks for the comment!
Another interesting and excellent video.. Nice to see you back again!
Thanks for the warning about the power on ramp of cheap Chinese power supplies!
Also I didn't see how the code could toggle the pin. You seem to be writing the same value to the port. I am unfamiliar with Atmel Studio and the AVR #defines. I expected you to write a '1' to the port, then delay, a '0' to the port then delay, just to make things clear for the viewer. However I have a sort of recollection that the AVR has a toggle register, but I googled and nothing came up. Found it now, writing to the PINx register results in a toggle of pins on PORTx.
I am used to AVRs in the context of the Arduino world/GUI. They are a cheap, nicely designed microcontroller. It's always helpful to learn some of the lower level details. 👍
Thanks for the comment!
Also glad I am not the only one wearing a Plague Doctor mask around the house.
That's awesome! Thanks for watching!
perfect pls more content make !
gambare !
More to come. Thanks for watching!
I Love AVRs
Yes, they are great little microcontrollers, and my go-to for a simple 8-bit processor. Thanks for commenting!
Not criticizing but I got confused and had to look up when you said '1 second or one hertz' if I understand you meant half a Hz?
No, I did mean 1 Hertz (which is a 1 second period). Let me explain. One half Hertz (0.5 Hertz) would equate to a 2 second period (remember that frequency and period are reciprocals of each other, so 1/(0.5 Hertz) = 2 seconds), and if you watch the LED blinking in the video you will notice that it did not take 2 seconds for the LED to blink. It was blinking once each second. The period represents the amount of time before the pattern repeats. The pattern is to turn the LED on for 500ms then off for 500ms (the LED is toggled every 500ms using the PIN register toggle feature). So, the full pattern consists of 500ms ON plus 500ms OFF which equals 1 second (the period). Then taking the reciprocal of that gives us 1 Hertz (1/(1 second) = 1 Hertz). Hopefully that makes sense. Thanks for the comment!
Why did the Led blink, you did not invert the bit on every other cycle?
That's a feature of PIN, rather than PORT, SFR.
As another commenter mentioned, it has to do with the PIN register. From the datasheet: "Writing a logic one to PINxn toggles the value of PORTxn, independent on the value of DDRxn." Therefore, each time I wrote a '1' to the PIN register, the output to the LED did in fact toggle. Thank you!
Hi! Just subscribed. I admit the thing that made me click the video thumbnail was seeing the mask. I thougth "This must be cool".
Also I have a bunch of Atmega 328P lying around which I haven't been able to program because they don't have bootloader (I even have an AVR programmer).
BTW, Bach is also one of my favorites.
You don't need bootloader if you program them directly using an ICE programmer (not installed in an Arduino for instance). I never use bootloader. But that's just my preference. Thanks for subscribing, and thanks for the comment!
Thanks for the tip! @@DoctorRGPlague
Nice👍
Nice
Thanks!
I should slow down in LSD binges, seeing black death medics discussing AVR overclocking
Not a bad idea...thanks for watching!
This video is so sick *COUGH COUGH*
Thank you!
wow, you made the whole video wearing that damn mask !!!
nice demonstration of microcontroller circuits
Thank you!