Тёмный
No video :(

Si5351 VFO/BFO Software: Part 2 Software overview 

Charlie Morris ZL2CTM
Подписаться 9 тыс.
Просмотров 14 тыс.
50% 1

Apologies for the quiet audio in this video. I’ve tried everything to make it better to no avail. please turn up the volume.
Two part video series looking at the software setup used to drive the Si5351.
Part 1 looks at the hardware and what's needed to be worked out prior to writing the software.
Part 2 looks at the software using the knowledge gained in Part 1.

Опубликовано:

 

5 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 49   
@johnwest7993
@johnwest7993 2 года назад
That was such a great code explanation. Thank you. Though I'm not a programmer, after only 36 minutes and 29 seconds I now feel confident to go into that code to change levels for components, and add features, knowing exactly what to change, and add, and where. You perform a wonderful service putting all this gear together and explaining both the hardware and software.
@andyhunter5191
@andyhunter5191 6 лет назад
Hi Charlie, thanks so much for doing the video's on the Si5351 hardware and code. Part 2 was of particular interest to me and explained things in a manner I could follow! It would be great if you could put the code up on your blog, I note there is some code on the Blog but not the code used in the part 2 video. I look forward to experimenting with the code and using it as a learning tool in conjunction with the excellent video you have produced. Kind regards form Andy...
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 6 лет назад
Hi Andy. Thanks for that. The code is now up on the blog. 73s Charlie
@JacquesConradie
@JacquesConradie 6 лет назад
Very interesting and entertaining, thanks! Things have become much simpler since I last tinkered with a homebrew DDS and having to drive it with a PIC chip programmed in Assembly language! I think I need to get myself a Si5351 board and start playing again! 73, Jacques ZS1PL
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 6 лет назад
Go for it Jacques. Build a DC receiver rig and go from there!Charlie
@docfoot316
@docfoot316 6 лет назад
Just watched this video again ,alot makes sense now you explaining the software code ,Always learning here ,Thanks Charlie
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 6 лет назад
That's good. I'm trying to make them informative.
@scharkalvin
@scharkalvin 6 лет назад
I've found a rotary encoder library that uses a state machine. It stores the current state for the A and B encoder inputs, and compares the old state with the new to determine which way the knob was turned. So I call the same function when either of the two interrupts happen, read the state of the two pins, as a binary value of two bits, and call the update function that compares the new encoder state with the old and then outputs +1, -1, or 0 depending on the new position. (If you missed an interrupt you could end up with a net change of zero). I did things a bit different with the switch, I had each press of the switch change the increment value by 10x, and then rotate back to the original value (ie, 10hz, 100hz, 1khz, 10khz, 100khz, back to 10hz), but I like your idea of rotating the knob while the switch is pressed (but I wonder if that would cause faster wear on the mechanical encoder).
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 6 лет назад
That's interesting. thanks . To date I have not had a rotary encoder fail from wear and tear. I guess I'm not too worried as they cost less than $2. The other option is to have a separate push button switch , but that would take two hands. The rig i have just finished used a four way joystick switch. All good fun! Charlie
@SpeccyMan
@SpeccyMan 5 лет назад
One little thing, you can banish all those "if (radix = x) radix =xx" lines in UpdateRot() with simple multiplication or division by 10. Not only will it make the code smaller it makes it more efficient. Time wasting within an ISR is always a bad thing so look for brevity! In pseudo code: if (button pressed) radix /= 10 or radix *= 10 depending on rotation.
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 5 лет назад
Thanks Nick. I'll add cleaning up the ISR code to the list.
@VK5AV
@VK5AV 4 года назад
Thanks for the video, a great description of your code, and easy to follow. 73 Tim VK5AV.
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 4 года назад
My pleasure Tim. I'm please you found it useful. I will put up another video soon looking at a similar topic for the latest build.
@GerardWassink
@GerardWassink Год назад
Thanks for sharing this program! And, if you don’t mind me asking, why don’t you use #define pushPin 4 ? That way it doesn’t take up valuable program space. Same goed for all the other ‘static’ defined stuff…
@TheArtofEngineering
@TheArtofEngineering Год назад
Hi Charlie....Thanks for that in-depth explanation....made me break out in a cold sweat, PTSD from trying to Java code this year and barely passing!! How do these scripts handle CW offset. I'm wanting to build a DDS for a rockmite but need a script that handles the off set for CW on transmit. Any idea where such a script might live or how to make it happen in the script? I have OLED and LCD screens ...it seems an LCD might be easier to start with? 73 de VK2AOE.
@jasonpirok
@jasonpirok 6 лет назад
Not as pretty as the underline for the frequency shift, but have you considered inverting the background of the digit being changed? It would free up the segments below the frequency.
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 6 лет назад
Hi Jason. No I have not tried an inverted figure. I did try a font which had a built in underline, which looked ok. I might take a look at the inverted font. The only issue would be the need to break the freq down into 10Meg, 1Meg, 100k, 10k etc in order to track which digit needs to be inverted. That’s straight forward to do, and arguably no more code than having to track and print the underline. I’ll take a look on the next build. Thanks for the input Jason.
@GerardWassink
@GerardWassink Год назад
My thought exactly!
@jhonamatir1511
@jhonamatir1511 2 года назад
I like it
@EmersonCapuano
@EmersonCapuano 6 лет назад
Could you put the link of your blog? Please
@RajaramSrinivasan59
@RajaramSrinivasan59 3 года назад
Hey Charlie! Wonderful explanation of the software. I tried running this code but couldn't find the KiquidCrystal_I2C.h library. I found one that is different by Author: Frank de Brabander and Maintainer: Marco Schwartz that doesn't work with your sketch as it has different commands eg., it doesn't even recognise LCD begin. Could you please guide me as to which library is to be used. Thanks. 73
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 3 года назад
I suggest you use your library. Look at the example sketches that come with it and port the syntax over to the VFO/BFO sketch. I do that all the time.
@RajaramSrinivasan59
@RajaramSrinivasan59 3 года назад
@@CharlieMorrisZL2CTM Thanks a ton!
@russoft
@russoft 6 лет назад
Normally I enjoy programming, but not when it comes between me and making my radio work. I've stolen all of your code. Thank you for your public service :)
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 6 лет назад
No problems there at all! I glean ideas all over the place too. That’s what ham radio is all about, the joy of radio comms and helping others. 73s. Charlie ZL2CTM
@vk3zb534
@vk3zb534 5 лет назад
Hey Charlie, big follower of your stuff! Have you recently encountered any problems with this compiling? I think it’s due to the si5351 library being updated, as I’m getting a few errors with the set_freq signatures. Cheers and 73 VK3SVW Josh
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 5 лет назад
Hi. Yes, the new library requires a tweak to some of the code. I suggest you open an example sketch from the updated library, and you'll quickly see the differences. They're minor. Charlie
@vk3zb534
@vk3zb534 5 лет назад
Thanks mate. Unfortunately it appears to be a bit beyond my comprehension, and now the liquid crystal library seems to have vanished.. haha. Not having much luck
@vk3zb534
@vk3zb534 5 лет назад
Well blow me down. I think I got it. Thanks mate
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 5 лет назад
Excellent!
@colincolin30
@colincolin30 4 года назад
Hi Charlie, I went to your blog spot to copy the sketch for the above project. The software for Jason code for the Si5351reference is there, but not the software above. Can you please give me some directions how to locate it please. DE vk2jcc 73
@grahamwright1951
@grahamwright1951 Год назад
Hi Colin where did you find the above code please, ZL2RGW Graham
@colincolin30
@colincolin30 4 года назад
Hi Charlie found it.. 73
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 4 года назад
Great!
@bbowling4979
@bbowling4979 6 лет назад
Excellent video! Is the code available?
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 6 лет назад
It should be on the blog: zl2ctm.blogspot.com/
@bbowling4979
@bbowling4979 6 лет назад
Thanks!
@borgteknoloji
@borgteknoloji 4 года назад
please share code and schematic
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 4 года назад
Hi. It should all be on the blog at: zl2ctm.blogspot.com/
@shanisoundsistem
@shanisoundsistem 3 года назад
Code and schematic please
@CharlieMorrisZL2CTM
@CharlieMorrisZL2CTM 3 года назад
All on the blog at: zl2ctm.blogspot.com/
Далее
Si5351 VFO/BFO Software: Part 1 Hardware overview
17:28
Programming si5351 with the PyBoard
18:36
Просмотров 6 тыс.
ЭТО мне КУПИЛИ ПОДПИСЧИКИ 📦
22:33
لدي بط عالق في أذني😰🐤👂
00:17
Просмотров 3,2 млн
Si5351 Clock Generator IQ Programming
5:39
This and That: More homebrew experiments.
12:57
Просмотров 4,1 тыс.
Homebrew 80m/40m SSB/CW Rig - Part 7: Receiver Tests
24:59
Homebrew 80/40m SSB/CW Rig - #7a Si5351 Calibration
16:56
Harder Drive: Hard drives we didn't want or need
36:47
Hacking Websites with SQL Injection - Computerphile
8:59
Unix vs Linux
13:59
Просмотров 1,6 млн
ЭТО мне КУПИЛИ ПОДПИСЧИКИ 📦
22:33