DeqingSun / ch55xduino

An Arduino-like programming API for the CH55X
GNU Lesser General Public License v2.1
433 stars 85 forks source link

todo for 0.0.10 #66

Open DeqingSun opened 2 years ago

DeqingSun commented 2 years ago

Test and merge https://github.com/DeqingSun/ch55xduino/pull/56, need to change register for CH559 and CH549

Test and merge https://github.com/DeqingSun/ch55xduino/pull/50

Test and merge keyboard and mouse complex https://github.com/betaEncoder/ch55xduino/tree/ch55xduino/ch55xduino/ch55x/libraries/Generic_Examples/examples/05.USB

Add verbose control in wrapper scripts to avoid scaring users. Seems the condition after # if OBJ is a .o file we copy back is different across platforms, may need further check.

if [[ "${OBJ}" == *.o ]] 
work on mac
if [[ ${OBJ%.o} != $OBJ ]]
work both on mac and windows

Fine tune delay microseconds.

Test and update tool for CH375 driver and 2.5.0 bootloader. Tool working in https://github.com/DeqingSun/ch55xduino/issues/65

Add name in c files and examples.

Add more interrupt handler as weak files.


0.0.11

Check if Type system / _Generic fixes is fixed in SDCC.

fix USBSerial_print_ib(P), need 2 parameters


0.0.13

Arduino 1.8.13 uses sed in /usr/bin/sed, while terminal and 2.0.0-rc7 uses /usr/local/bin/sed ("need space ")

update upload tool https://github.com/DeqingSun/ch55xduino/issues/76

update sdcc https://github.com/DeqingSun/ch55xduino/issues/72


0.0.16

Add RPI support

Update upload tool for config bytes option

Change to Large stack auto model

check

Send Detect: Fail
An error occurred while uploading the sketch

Add options to the upload tool

DeqingSun commented 1 year ago

Using Math Routines in Interrupt Service Routines (ISRs)

Using Math Routines in Interrupt Service Routines (ISRs)

Function Description Makefile belongings
_mulint.c 16-bit multiplication SOURCES_INT
_divsint.c signed 16-bit division (calls _divuint) SOURCES_INT
_divuint.c unsigned 16-bit division SOURCES_INT
_modsint.c signed 16-bit modulus (calls _moduint) SOURCES_INT
_moduint.c unsigned 16-bit modulus SOURCES_INT
_mullong.c 32-bit multiplication SOURCES_LONG
_divslong.c signed 32 division (calls _divulong)
_divulong.c unsigned 32 division SOURCES_LONG
_modslong.c signed 32-bit modulus (calls _modulong)
_modulong.c unsigned 32-bit modulus

https://sdcc.sourceforge.net/doc/sdccman.pdf

3.8.1.4 Common interrupt pitfall: use of non-reentrant functions

3.12 Support routines for integer multiplicative operators

lib13407.zip

lib13407_mix_regular_autostack.zip