![]() |
Forum Index : Microcontroller and PC projects : Armmite H7 questions
Author | Message | ||||
vincenthimpe Regular Member ![]() Joined: 14/10/2018 Location: United StatesPosts: 71 |
which touch controllers are supported ? i am reworking an earlier design i did to port a Teensy (freescale) over to the STM32H7 chipset so i can run Armmite H7 and get rid of the whole arduino thing. I use a SPI IlI9341 2.8 inch 320x240 but with a built-in capacitive touch controller on i2C. ![]() ![]() The entire design is done in circuitmaker as a 4 layer board and open source. - Bluetooth link - sdcard - usb console port (Silabs based) - standby/power - illuminated buttons - navigator pad with rotary encoder - 320x240 over SPI with capacitive touch so : what touch controllers are suported ? oh, and is there an updates basic users manual. the latest basic language manual is 4.5 ... it would be good to have one for 5.whatever-we-are-at-now Thanks |
||||
TassyJim![]() Guru ![]() Joined: 07/08/2011 Location: AustraliaPosts: 6283 |
For manuals, there are the ones on Geoff's web site http://geoffg.net/micromite.html You will need the micromite and Micromite Plus manuals. The changes for the Armite are in manuals Peter posted in the Armite threads. The touch controller is the XPT2046 If you want to use a capacitive touch screen, you will have to do your own code. I don't thing anyone has tried yet. Jim VK7JH MMedit |
||||
vincenthimpe Regular Member ![]() Joined: 14/10/2018 Location: United StatesPosts: 71 |
how can i hook into the existing code ? i can write my own driver but want to dispatch the calls to the GUI elements. Is there a way to provide user drivers ? |
||||
Vito Newbie ![]() Joined: 11/10/2016 Location: AustraliaPosts: 17 |
Hi Vincent, Guys on this forum most likely don't know who you are and that you are like "Royalty" in electronics/microcontroller field. You will probably get most of your answers from MMbasic source code by filling and requesting from the following link. http://mmbasic.com/source.html I hope things are going well at Tesla. By the way you have a good looking H7 board there. Best Regards |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10315 |
The answer is "yes but" All Micromites support CFunctions and include a hook to a routine "int GetTouchAxis(int cmd)" The issue is creating the CFunction for the Armmite. Some years ago Peter Carnegie created a routine to take an ARM .ELF file and convert it to the CFunction Basic statements. Unfortunately he no longer posts and his code is no longer available. I re-created a CFunction generator for the PIC with TassyJim but haven't looked at doing one for the ARM. You also need to compile the code to be position independent. On the PIC this means a bunch of compiler options. -fPIC -mno-abicalls -fno-toplevel-reorder -shared -membedded-data -mno-long-calls -fno-jump-tables -mno-jals -mgpopt -Wuninitialized -Wunused-variable -Wunused-value -Wunreachable-code The simplest solution is for me or you to include support for capacitive touch in the Armmite firmware. I did write a capacitive touch driver for the PIC some time ago but can't remember which chip it supported. I could make the Armmite source available to you with Geoff's agreement for you to integrate the driver. |
||||
vincenthimpe Regular Member ![]() Joined: 14/10/2018 Location: United StatesPosts: 71 |
hmm... looks like the H7 support is not on par as the pic32 MZ support. Maybe i should do the MZ version of this board first. i got access to the source but i'm unfamiliar with the toolchain. things i want to do : - capacitive driver for the FT6206 controller - enable all 5 i2c , all 6 SPI channels all 6 uarts including hardware handshakes. - one SPI is hardwired to sdcard, one Uart is hardwaired to the BLe module , one i2c is used for system household ( battery gauge , navipad, buttons, led's ) the others are wired to board edge connectors. |
||||
matherp Guru ![]() Joined: 11/12/2012 Location: United KingdomPosts: 10315 |
Note, CFunctions are "difficult" on the MZ due to recent XC32 compiler changes which affected the way position independent code is produced. You can't use the older version of the compiler because the MZ isn't supported. Your wish list really means creating a custom version of MMBasic which would be for your use only. This is fully allowed under the terms of the Micromite licence which also applies to the MZ but neither the source or binary can be distributed. |
||||
vincenthimpe Regular Member ![]() Joined: 14/10/2018 Location: United StatesPosts: 71 |
That's why i want to attempt this from withing MMbasic itself using peek and poke to access registers. All i need to do is alter some registers to reassign the IO pins to the correct functions , and to access the controllers. No need to modify the C sourcecode. All you need is to include a block of basic sourcecode. No distribution problem. No C code required. I simply want access to all the I2C channels and more granular control over the i2c operations (restart , clock stretching) . Two just isn't enough. |
||||
![]() |
![]() |
The Back Shed's forum code is written, and hosted, in Australia. | © JAQ Software 2025 |