X-Git-Url: http://git.rot13.org/?p=goodfet;a=blobdiff_plain;f=firmware%2Finclude%2Favr.h;h=f0e86142cf3cd24d0402c25d2b249cf2ac348993;hp=d71539484a5513dc8416950170ac4edd2f6ee6e7;hb=3e4992b4d109f361b42abdda403471860edfeabf;hpb=2d6cf1279657fb40d818675dd22923744ef178fc diff --git a/firmware/include/avr.h b/firmware/include/avr.h index d715394..f0e8614 100644 --- a/firmware/include/avr.h +++ b/firmware/include/avr.h @@ -15,10 +15,26 @@ void avrconnect(); void avr_prgen(); //! Read AVR device code. u8 avr_sig(u8 i); +//! Erase an AVR device +void avr_erase(); +//! Read lock bits. +u8 avr_lockbits(); +//! Write lock bits. +void avr_setlock(u8 bits); + +//! Read a byte of Flash +u8 avr_peekflash(u16 adr); + +//! Read a byte of EEPROM. +u8 avr_peekeeprom(u16 adr); +//! Read a byte of EEPROM. +u8 avr_pokeeeprom(u16 adr, u8 val); +//! Is the AVR ready or busy? +u8 avr_isready(); //Command codes. -//! Performa chip erase. +//! Perform a chip erase. #define AVR_ERASE 0xF0 //! Fetch RDY/!BSY byte. #define AVR_RDYBSY 0xF1 @@ -27,11 +43,17 @@ u8 avr_sig(u8 i); #define AVR_PEEKPGM 0x80 //! Read EEPROM #define AVR_PEEKEEPROM 0x81 +//! Write EEPROM +#define AVR_POKEEEPROM 0x91 //! Read lock bits. #define AVR_PEEKLOCK 0x82 +//! Write lock its. +#define AVR_POKELOCK 0x92 //! Read signature. #define AVR_PEEKSIG 0x83 //! Read fuse bits. #define AVR_READFUSES 0x84 //! Read calibration byte. #define AVR_READCAL 0x85 +//! Bulk load data +#define AVR_BULKLOAD 0x86