![]() |
Forum Index : Microcontroller and PC projects : ArmmiteF4 User Manual
![]() ![]() |
|||||
Author | Message | ||||
circuit Senior Member ![]() Joined: 10/01/2016 Location: United KingdomPosts: 268 |
BUMP - any answers to this? Also, any update to the manual? Picomite seems to be using all the bandwidth of users' creativity at the moment...at the expense of F4 ![]() |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10004 |
No: the 407 FLASH is full and the initialisation of displays takes a lot of code so not possible Edited 2021-08-02 19:03 by matherp |
||||
disco4now![]() Guru ![]() Joined: 18/12/2014 Location: AustraliaPosts: 966 |
Latest draft of the manual. A new section Change Log just before Appendix A list changes. The headings are all available as bookmarks for easy navigation. Armmite F4 User Manual MMBasic Ver 5.07.00b14 A consolidated manual for the Armmite F4 DRAFT 4 Armmite F4 Manual.pdf Latest F4 Latest H7 FotS |
||||
lizby Guru ![]() Joined: 17/05/2016 Location: United StatesPosts: 3299 |
Thank you. I have this manual always open. PicoMite, Armmite F4, SensorKits, MMBasic Hardware, Games, etc. on fruitoftheshed |
||||
circuit Senior Member ![]() Joined: 10/01/2016 Location: United KingdomPosts: 268 |
185 pages of excellence! This is a most comprehensive and very much appreciated manual. Thank you for all the time and effort that you have put into this; it makes an enormous difference when working with the device. |
||||
phil99![]() Guru ![]() Joined: 11/02/2018 Location: AustraliaPosts: 2407 |
ARMMite F4 ![]() Odd behavior of PAUSE for short pauses. PAUSE 0.049 gives a 40uS pause but PAUSE 0.050 produces 90uS. If this is expected then perhaps it could be noted in the next manual update. If not, maybe there is a hiccup in the firmware. I need 50uS pauses between data pulses, but get 40 or 90. Two shorter pulses together work but one is more elegant. Test code: setpin 4,dout :pin(4)=0:do :pulse 4,25 : pause 0.05 :pulse 4,70 : pause 0.049 :loop This pic shows a short pulse between two long ones with 50 and 49uS pauses. It's only a toy audio scope but good enough to show the issue. |
||||
Mixtel90![]() Guru ![]() Joined: 05/10/2019 Location: United KingdomPosts: 7468 |
Are you running the test code in a single line? If so, please try one statement per line and see if you get the same result. Mick Zilog Inside! nascom.info for Nascom & Gemini Preliminary MMBasic docs & my PCB designs |
||||
disco4now![]() Guru ![]() Joined: 18/12/2014 Location: AustraliaPosts: 966 |
Not exactly sure what is happening, but a couple of things that may be impacting this. PULSE greater than 3ms is run in the background with accuracy of 0.5ms. So you order it and it completes some time later,but it is not blocking so the subsequent PULSE command is issued straight after the PAUSE before the previous completes.The PAUSE is happening before the PULSE is complete as its in the background. The SYNC command maybe what you need to get these short durations or even the whole thing. Something like that is my theory. Latest F4 Latest H7 FotS |
||||
phil99![]() Guru ![]() Joined: 11/02/2018 Location: AustraliaPosts: 2407 |
@Mixtel90 "Are you running the test code in a single line? If so, please try one statement per line and see if you get the same result." The single line version was only to to get a continuous stream to see on the scope what was happening. The same thing happens in the main program loop, one line at a time. @disco4now There are no long pulses. the start pause and pulse are 80uS each, data pulses are 27uS and 70uS for 0 and 1 with 50uS pauses in between. I can get 50 with:- PAUSE .03 : PAUSE .02 But Pause .05 gives 90 I will try the SYNC command. Thanks for the assistance. Phil |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10004 |
MMBasic takes time to process commands. If we say on the ArmmiteF4 that each command has an overhead of say 20uSec then trying to do timings of pauses in the uSec range won't work. Also H/WE interrupts will be happening (e.g.USB) so individual timings may have some variance. Sync may help a bit but you are pushing what the F4 is capable of in Basic. The H7 would do what you want using the bitstream command or on the F4 you could use a CFunction and global disable interrupts at the start and re-enable at the end |
||||
phil99![]() Guru ![]() Joined: 11/02/2018 Location: AustraliaPosts: 2407 |
Thanks Peter, yes It is pushing things a bit, It is just seems odd that up to 40uS is ok but 50uS isn't. Anyway a 30 followed by 20 does the job. A CFunction would certainly be best if I had the ability. One of the many great things about MMbasic is that I can do things that would otherwise be beyond me. |
||||
Volhout Guru ![]() Joined: 05/03/2018 Location: NetherlandsPosts: 4815 |
This is exactly what the PIO in the picomite is designed for. Real time processing besides the CPU. PicomiteVGA PETSCII ROBOTS |
||||
disco4now![]() Guru ![]() Joined: 18/12/2014 Location: AustraliaPosts: 966 |
Armmite F4 User Manual MMBasic Ver 5.07.00b15 A consolidated manual for the Armmite F4 DRAFT 5 5.07.00 Beta15 Armmite F4 Manual.pdf Change Summary Latest F4 Latest H7 FotS |
||||
![]() ![]() |
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |