參考資訊:
https://www.sparetimelabs.com/funwith08/funwith08.php
https://www.nxp.com/docs/en/data-sheet/MC68HC908JB8.pdf
https://github.com/ixaxaar/sdcc/blob/master/sdas/doc/asmlnk.txt
https://hackaday.io/project/167952-semyon/log/169905-blink-with-sdas
https://www.nxp.com/files-static/microcontrollers/doc/ref_manual/HCS08RMV1.pdf
司徒目前使用SDCC編譯器,而燒錄軟體則是使用bl08,安裝方式如下:
$ sudo apt-get install sdcc -y
$ cd
$ wget https://github.com/steward-fu/mc68hc908jb8/releases/download/v1.0/bl08.c
$ gcc bl08.c -o bl08
$ sudo cp bl08 /usr/local/bin
$ sudo chmod 0777 /usr/local/bin/bl08
$ bl08
bl08 burns MC68HC908 Flash memory from S-record file(s) using Monitor mode
Usage:
bl08 [-abcdefhiklmnpqrstuvx] [filename...]
-a address Set dump memory address (needs -s option too)
-b baudrate Set baudrate for target communication
-c device Set serial com device used to communicate with target
typically /dev/ttyS0
-d dumpformat Set dump format, supported formats are: 'srec'
-e Erase target using mass erase mode, clearing security bytes
-f Use fast programming method -g address Go execute target code from address or use '-g reset'
-h Print out this help text
-i Read input (S-records) from standard inputi
-k Kill previous instance of bl08
-l verbosity Set verbosity level, valid values are 0-4, default 1
-m Terminal emulator mode
-n Print bl08 version number
-o param=value Override target parameter value
param = ROMBASE,FLASH,PUTBYTE,GETBYTE,RDVRRNG,MONRTN
ERARRNG,PRGRNGE,FLBPR,MONDATA,PAGESIZE,EADDR
-p Use page erase when programming flash
-q Run quietly, same as -l 0
-s size Set dump memory size
-r pulse Pulse DTR for pulse milliseconds
-t cputype Set CPU type, valid values are: 'gz16'
-u Upload only (do not program flash)
-v Verify when programming
-x cpuspeed Set CPU speed, typically set for Fbus (in MHz) x 4
-z Do not program, do no upload, just read in the S-rec file
addresses and sizes in decimal, for hex prefix with '0x'
P.S. MC68HC908JB8可以透過UART直接燒錄,因此,只需要準備一條USB轉UART傳輸線就可以進行燒錄