mc68hc912b32.h 78 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264
  1. /*****************************************************
  2. 6812b32.h - Target interface library
  3. Describes I/O registers of MC68HC12B32
  4. ----------------------------------------------------
  5. Copyright (c) Metrowerks, Basel, Switzerland
  6. Do not modify!
  7. *****************************************************/
  8. /****************************************!! WARNINGS !!*********************************************/
  9. /* 1)PORT A, PORT B, and data direction registers DDRA and DDRB are not in map in expanded */
  10. /* and peripheral modes */
  11. /* 2)PORT E and DDRE not in map in peripheral mode; also not in map in expanded modes with */
  12. /* EME set. */
  13. /* 3)MODE, PUCR, AND RDRIV not in map in peripheral mode. */
  14. /* 4)Choose carefully your variable names.For example: 'M' is the defined name of the bit 4 */
  15. /* from the register 'SC0CR1' (SCI Control Register 1). */
  16. /***************************************************************************************************/
  17. #ifndef __6812B32_H__
  18. #define __6812B32_H__
  19. #define _IO_BASE_ADDR 0
  20. #define _IO_AT(x) @(_IO_BASE_ADDR+(x))
  21. #ifndef __DECL__6812B32_H__
  22. #define __DECL__6812B32_H__ extern
  23. #endif
  24. #pragma MESSAGE DISABLE C1106 /* WARNING C1106: Non-standard bitfield type */
  25. #include <stdtypes.h>
  26. /**************************************************************************************************/
  27. /* DEFINE PORT A */
  28. /**************************************************************************************************/
  29. __DECL__6812B32_H__ volatile unsigned char PORTA _IO_AT(0x00); /* port A */
  30. __DECL__6812B32_H__ volatile unsigned char DDRA _IO_AT(0x02); /* data direction port A */
  31. /**************************************************************************************************/
  32. /* DEFINE PORT B */
  33. /**************************************************************************************************/
  34. __DECL__6812B32_H__ volatile unsigned char PORTB _IO_AT(0x01); /* port B */
  35. __DECL__6812B32_H__ volatile unsigned char DDRB _IO_AT(0x03); /* data direction port B */
  36. /**************************************************************************************************/
  37. /* DEFINE PORT E */
  38. /**************************************************************************************************/
  39. __DECL__6812B32_H__ volatile unsigned char PORTE _IO_AT(0x08); /* port E */
  40. __DECL__6812B32_H__ volatile union {
  41. struct {
  42. unsigned char BIT0:1;
  43. unsigned char BIT1:1;
  44. unsigned char _DDE2:1;
  45. unsigned char _DDE3:1;
  46. unsigned char _DDE4:1;
  47. unsigned char _DDE5:1;
  48. unsigned char _DDE6:1;
  49. unsigned char _DDE7:1;
  50. } DDRE_BITS;
  51. unsigned char DDRE_BYTE;
  52. }DDRE1 _IO_AT(0x09);
  53. /* DEFINE REGISTER */
  54. #define DDRE DDRE1.DDRE_BYTE
  55. /*DEFINE REGISTER BITS*/
  56. #define DDE2 DDRE1.DDRE_BITS._DDE2
  57. #define DDE3 DDRE1.DDRE_BITS._DDE3
  58. #define DDE4 DDRE1.DDRE_BITS._DDE4
  59. #define DDE5 DDRE1.DDRE_BITS._DDE5
  60. #define DDE6 DDRE1.DDRE_BITS._DDE6
  61. #define DDE7 DDRE1.DDRE_BITS._DDE7
  62. /**************************************************************************************************/
  63. /* PORT E ASSIGNEMENT REGISTER */
  64. /**************************************************************************************************/
  65. __DECL__6812B32_H__ volatile union {
  66. struct {
  67. unsigned char BIT0:1;
  68. unsigned char BIT1:1;
  69. unsigned char _RDWE:1;
  70. unsigned char _LSTRE:1;
  71. unsigned char _NECLK:1;
  72. unsigned char _PIPOE:1;
  73. unsigned char _BIT6:1;
  74. unsigned char _NDBE:1;
  75. } PEAR_BITS;
  76. unsigned char PEAR_BYTE;
  77. }PEAR1 _IO_AT(0x0a);
  78. /*DEFINE FOR THE COMPATIBILITY WITH OLD VERSION*/
  79. /* "CKL" INSTEAD OF "CLK" */
  80. #define _NECKL _NECLK
  81. #define NECKL NECLK
  82. /*DEFINE REGISTER*/
  83. #define PEAR PEAR1.PEAR_BYTE
  84. /*DEFINE REGISTER BITS*/
  85. #define RDWE PEAR1.PEAR_BITS._RDWE
  86. #define LSTRE PEAR1.PEAR_BITS._LSTRE
  87. #define NECLK PEAR1.PEAR_BITS._NECLK
  88. #define PIPOE PEAR1.PEAR_BITS._PIPOE
  89. #define NDBE PEAR1.PEAR_BITS._NDBE
  90. /**************************************************************************************************/
  91. /* MODE REGISTER */
  92. /**************************************************************************************************/
  93. __DECL__6812B32_H__ volatile union {
  94. struct {
  95. unsigned char _EME:1 ;
  96. unsigned char _BIT1:1 ;
  97. unsigned char _EBSWAI:1 ;
  98. unsigned char _IVIS:1 ;
  99. unsigned char _ESTR:1 ;
  100. unsigned char _MODA:1 ;
  101. unsigned char _MODB:1 ;
  102. unsigned char _SMODN:1 ;
  103. } MODE_BITS;
  104. unsigned char MODE_BYTE;
  105. }MODE1 _IO_AT(0x0B);
  106. /*DEFINE REGISTER*/
  107. #define MODE MODE1.MODE_BYTE
  108. /*DEFINE REGISTER BITS*/
  109. #define EME MODE1.MODE_BITS._EME
  110. #define EBSWAI MODE1.MODE_BITS._EBSWAI
  111. #define IVIS MODE1.MODE_BITS._IVIS
  112. #define ESTR MODE1.MODE_BITS._ESTR
  113. #define MODA MODE1.MODE_BITS._MODA
  114. #define MODB MODE1.MODE_BITS._MODB
  115. #define SMODN MODE1.MODE_BITS._SMODN
  116. /**************************************************************************************************/
  117. /* PULL-UP CONTROL REGISTER */
  118. /**************************************************************************************************/
  119. __DECL__6812B32_H__ volatile union {
  120. struct {
  121. unsigned char _PUPA:1;
  122. unsigned char _PUPB:1;
  123. unsigned char BIT2:1;
  124. unsigned char BIT3:1;
  125. unsigned char _PUPE:1;
  126. unsigned char BIT5:1;
  127. unsigned char BIT6:1;
  128. unsigned char BIT7:1;
  129. } PUCR_BITS;
  130. unsigned char PUCR_BYTE;
  131. }PUCR1 _IO_AT(0x0C);
  132. /*DEFINE REGISTER*/
  133. #define PUCR PUCR1.PUCR_BYTE
  134. /*DEFINE REGISTER BITS*/
  135. #define PUPA PUCR1.PUCR_BITS._PUPA
  136. #define PUPB PUCR1.PUCR_BITS._PUPB
  137. #define PUPE PUCR1.PUCR_BITS._PUPE
  138. /**************************************************************************************************/
  139. /* REDUCED DRIVE OF I\O LINES */
  140. /**************************************************************************************************/
  141. __DECL__6812B32_H__ volatile union {
  142. struct {
  143. unsigned char _RDPA:1;
  144. unsigned char _RDPB:1;
  145. unsigned char BIT2:1;
  146. unsigned char _RDPE:1;
  147. unsigned char BIT4:1;
  148. unsigned char BIT5:1;
  149. unsigned char BIT6:1;
  150. unsigned char BIT7:1;
  151. } RDRIV_BITS;
  152. unsigned char RDRIV_BYTE;
  153. }RDRIV1 _IO_AT(0x0D);
  154. /*DEFINE REGISTER*/
  155. #define RDRIV RDRIV1.RDRIV_BYTE
  156. /*DEFINE REGISTER BITS*/
  157. #define RDPA RDRIV1.RDRIV_BITS._RDPA
  158. #define RDPB RDRIV1.RDRIV_BITS._RDPB
  159. #define RDPE RDRIV1.RDRIV_BITS._RDPE
  160. /**************************************************************************************************/
  161. /* INITIALIZATION OF INTERNAL RAM POSITION REGISTER */
  162. /**************************************************************************************************/
  163. __DECL__6812B32_H__ volatile union {
  164. struct {
  165. unsigned char BIT0:1;
  166. unsigned char BIT1:1;
  167. unsigned char BIT2:1;
  168. unsigned char _RAM11:1;
  169. unsigned char _RAM12:1;
  170. unsigned char _RAM13:1;
  171. unsigned char _RAM14:1;
  172. unsigned char _RAM15:1;
  173. } INITRM_BITS;
  174. unsigned char INITRM_BYTE;
  175. }INITRM1 _IO_AT(0x10);
  176. /*DEFINE REGISTER*/
  177. #define INITRM INITRM1.INITRM_BYTE
  178. /*DEFINE REGISTER BITS*/
  179. #define RAM11 INITRM1.INITRM_BITS._RAM11
  180. #define RAM12 INITRM1.INITRM_BITS._RAM12
  181. #define RAM13 INITRM1.INITRM_BITS._RAM13
  182. #define RAM14 INITRM1.INITRM_BITS._RAM14
  183. #define RAM15 INITRM1.INITRM_BITS._RAM15
  184. /**************************************************************************************************/
  185. /* INITIALIZATION OF INTERNAL REGISTER POSITION REGISTER */
  186. /**************************************************************************************************/
  187. __DECL__6812B32_H__ volatile union {
  188. struct {
  189. unsigned char _MMSWAI:1;
  190. unsigned char BIT1:1;
  191. unsigned char BIT2:1;
  192. unsigned char _REG11:1;
  193. unsigned char _REG12:1;
  194. unsigned char _REG13:1;
  195. unsigned char _REG14:1;
  196. unsigned char _REG15:1;
  197. } INITRG_BITS;
  198. unsigned char INITRG_BYTE;
  199. }INITRG1 _IO_AT(0x11);
  200. /*DEFINE REGISTER*/
  201. #define INITRG INITRG1.INITRG_BYTE
  202. /*DEFINE REGISTER BITS*/
  203. #define MMSWAI INITRG1.INITRG_BITS._MMSWAI
  204. #define REG11 INITRG1.INITRG_BITS._REG11
  205. #define REG12 INITRG1.INITRG_BITS._REG12
  206. #define REG13 INITRG1.INITRG_BITS._REG13
  207. #define REG14 INITRG1.INITRG_BITS._REG14
  208. #define REG15 INITRG1.INITRG_BITS._REG15
  209. /**************************************************************************************************/
  210. /* INITIALIZATION OF INTERNAL EEPROM POSITION REGISTER */
  211. /**************************************************************************************************/
  212. __DECL__6812B32_H__ volatile union {
  213. struct {
  214. unsigned char _EEON:1;
  215. unsigned char BIT1:1;
  216. unsigned char BIT2:1;
  217. unsigned char BIT3:1;
  218. unsigned char _EE12:1;
  219. unsigned char _EE13:1;
  220. unsigned char _EE14:1;
  221. unsigned char _EE15:1;
  222. } INITEE_BITS;
  223. unsigned char INITEE_BYTE;
  224. }INITEE1 _IO_AT(0x12);
  225. /*DEFINE REGISTER*/
  226. #define INITEE INITEE1.INITEE_BYTE
  227. /*DEFINE REGISTER BITS*/
  228. #define EEON INITEE1.INITEE_BITS._EEON
  229. #define EE12 INITEE1.INITEE_BITS._EE12
  230. #define EE13 INITEE1.INITEE_BITS._EE13
  231. #define EE14 INITEE1.INITEE_BITS._EE14
  232. #define EE15 INITEE1.INITEE_BITS._EE15
  233. /**************************************************************************************************/
  234. /* MISCELLANEOUS MAPPING CONTROL REGISTER */
  235. /**************************************************************************************************/
  236. __DECL__6812B32_H__ volatile union {
  237. struct {
  238. unsigned char _ROMON:1;
  239. unsigned char _MAPROM:1;
  240. unsigned char _EXSTR0:1;
  241. unsigned char _EXSTR1:1;
  242. unsigned char _RFSTR0:1;
  243. unsigned char _RFSTR1:1;
  244. unsigned char _NDRF:1;
  245. unsigned char BIT7:1;
  246. } MISC_BITS;
  247. unsigned char MISC_BYTE;
  248. }MISC1 _IO_AT(0x13);
  249. /*DEFINE REGISTER*/
  250. #define MISC MISC1.MISC_BYTE
  251. /*DEFINE REGISTER BITS*/
  252. #define ROMON MISC1.MISC_BITS._ROMON
  253. #define MAPROM MISC1.MISC_BITS._MAPROM
  254. #define EXSTR0 MISC1.MISC_BITS._EXSTR0
  255. #define EXSTR1 MISC1.MISC_BITS._EXSTR1
  256. #define RFSTR0 MISC1.MISC_BITS._RFSTR0
  257. #define RFSTR1 MISC1.MISC_BITS._RFSTR1
  258. #define NDRF MISC1.MISC_BITS._NDRF
  259. /**************************************************************************************************/
  260. /* REAL-TIME INTERRUPT ENABLE */
  261. /**************************************************************************************************/
  262. __DECL__6812B32_H__ volatile union {
  263. struct {
  264. unsigned char _RTR0:1;
  265. unsigned char _RTR1:1;
  266. unsigned char _RTR2:1;
  267. unsigned char _RTBYP:1;
  268. unsigned char _BIT4:1;
  269. unsigned char _RSBCK:1;
  270. unsigned char _RSWAI:1;
  271. unsigned char _RTIE:1;
  272. } RTICTL_BITS;
  273. unsigned char RTICTL_BYTE;
  274. }RTICTL1 _IO_AT(0x14);
  275. /*DEFINE REGISTER*/
  276. #define RTICTL RTICTL1.RTICTL_BYTE
  277. /*DEFINE REGISTER BITS*/
  278. #define RTR0 RTICTL1.RTICTL_BITS._RTR0
  279. #define RTR1 RTICTL1.RTICTL_BITS._RTR1
  280. #define RTR2 RTICTL1.RTICTL_BITS._RTR2
  281. #define RTBYP RTICTL1.RTICTL_BITS._RTBYP
  282. #define RSBCK RTICTL1.RTICTL_BITS._RSBCK
  283. #define RSWAI RTICTL1.RTICTL_BITS._RSWAI
  284. #define RTIE RTICTL1.RTICTL_BITS._RTIE
  285. /**************************************************************************************************/
  286. /* REAL-TIME INTERRUPT FLAG REGISTER */
  287. /**************************************************************************************************/
  288. __DECL__6812B32_H__ volatile union {
  289. struct {
  290. unsigned char BIT0:1;
  291. unsigned char BIT1:1;
  292. unsigned char BIT2:1;
  293. unsigned char BIT3:1;
  294. unsigned char BIT4:1;
  295. unsigned char BIT5:1;
  296. unsigned char BIT6:1;
  297. unsigned char _RTIF:1;
  298. } RTIFLG_BITS;
  299. unsigned char RTIFLG_BYTE;
  300. }RTIFLG1 _IO_AT(0x15);
  301. /*DEFINE REGISTER*/
  302. #define RTIFLG RTIFLG1.RTIFLG_BYTE
  303. /*DEFINE REGISTER BITS*/
  304. #define RTIF RTIFLG1.RTIFLG_BITS._RTIF
  305. /**************************************************************************************************/
  306. /* COP CONTROL REGISTER */
  307. /**************************************************************************************************/
  308. __DECL__6812B32_H__ volatile union {
  309. struct {
  310. unsigned char _CR0:1;
  311. unsigned char _CR1:1;
  312. unsigned char _CR2:1;
  313. unsigned char _DISR:1;
  314. unsigned char _FCOP:1;
  315. unsigned char _FCM:1;
  316. unsigned char _FCME:1;
  317. unsigned char _CME:1;
  318. } COPCTL_BITS;
  319. unsigned char COPCTL_BYTE;
  320. }COPCTL1 _IO_AT(0x16);
  321. /*DEFINE REGISTER*/
  322. #define COPCTL COPCTL1.COPCTL_BYTE
  323. /*DEFINE REGISTER BITS*/
  324. #define CR0 COPCTL1.COPCTL_BITS._CR0
  325. #define CR1 COPCTL1.COPCTL_BITS._CR1
  326. #define CR2 COPCTL1.COPCTL_BITS._CR2
  327. #define DISR COPCTL1.COPCTL_BITS._DISR
  328. #define FCOP COPCTL1.COPCTL_BITS._FCOP
  329. #define FCM COPCTL1.COPCTL_BITS._FCM
  330. #define FCME COPCTL1.COPCTL_BITS._FCME
  331. #define CME COPCTL1.COPCTL_BITS._CME
  332. /**************************************************************************************************/
  333. /* ARM/RESET COP TIMER REGISTER */
  334. /**************************************************************************************************/
  335. __DECL__6812B32_H__ volatile unsigned char COPRST _IO_AT(0x17); /* COP arm/reset */
  336. /**************************************************************************************************/
  337. /* INTERRUPT TEST REGISTERS */
  338. /**************************************************************************************************/
  339. __DECL__6812B32_H__ volatile unsigned char ITST0 _IO_AT(0x18); /* interrupt test 0 */
  340. __DECL__6812B32_H__ volatile unsigned char ITST1 _IO_AT(0x19); /* interrupt test 1 */
  341. __DECL__6812B32_H__ volatile unsigned char ITST2 _IO_AT(0x1a); /* interrupt test 2 */
  342. __DECL__6812B32_H__ volatile unsigned char ITST3 _IO_AT(0x1b); /* interrupt test 3 */
  343. /**************************************************************************************************/
  344. /* INTERRUPT CONTROL REGISTER */
  345. /**************************************************************************************************/
  346. __DECL__6812B32_H__ volatile union {
  347. struct {
  348. unsigned char BIT0:1;
  349. unsigned char BIT1:1;
  350. unsigned char BIT2:1;
  351. unsigned char BIT3:1;
  352. unsigned char BIT4:1;
  353. unsigned char _DLY:1;
  354. unsigned char _IRQEN:1;
  355. unsigned char _IRQE:1;
  356. } INTCR_BITS;
  357. unsigned char INTCR_BYTE;
  358. }INTCR1 _IO_AT(0x1E);
  359. /*DEFINE REGISTER*/
  360. #define INTCR INTCR1.INTCR_BYTE
  361. /*DEFINE REGISTER BITS*/
  362. #define DLY INTCR1.INTCR_BITS._DLY
  363. #define IRQEN INTCR1.INTCR_BITS._IRQEN
  364. #define IRQE INTCR1.INTCR_BITS._IRQE
  365. /**************************************************************************************************/
  366. /* HIGHEST PRIORITY I INTERRUPT */
  367. /**************************************************************************************************/
  368. __DECL__6812B32_H__ volatile union {
  369. struct {
  370. unsigned char BIT0:1;
  371. unsigned char _PSEL1:1;
  372. unsigned char _PSEL2:1;
  373. unsigned char _PSEL3:1;
  374. unsigned char _PSEL4:1;
  375. unsigned char _PSEL5:1;
  376. unsigned char BIT6:1;
  377. unsigned char BIT7:1;
  378. } HPRIO_BITS;
  379. unsigned char HPRIO_BYTE;
  380. }HPRIO1 _IO_AT(0x1F);
  381. /*DEFINE REGISTER*/
  382. #define HPRIO HPRIO1.HPRIO_BYTE
  383. /*DEFINE REGISTER BITS*/
  384. #define PSEL1 HPRIO1.HPRIO_BITS._PSEL1
  385. #define PSEL2 HPRIO1.HPRIO_BITS._PSEL2
  386. #define PSEL3 HPRIO1.HPRIO_BITS._PSEL3
  387. #define PSEL4 HPRIO1.HPRIO_BITS._PSEL4
  388. #define PSEL5 HPRIO1.HPRIO_BITS._PSEL5
  389. /**************************************************************************************************/
  390. /* BREAKPOINT CONTROL REGISTER 0 */
  391. /**************************************************************************************************/
  392. __DECL__6812B32_H__ volatile union {
  393. struct {
  394. unsigned char BIT0:1;
  395. unsigned char BIT1:1;
  396. unsigned char _BK0ALE:1;
  397. unsigned char _BK1ALE:1;
  398. unsigned char BIT4:1;
  399. unsigned char _BKPM:1;
  400. unsigned char _BKEN0:1;
  401. unsigned char _BKEN1:1;
  402. } BRKCT0_BITS;
  403. unsigned char BRKCT0_BYTE;
  404. }BRKCT01 _IO_AT(0x20);
  405. /*DEFINE REGISTER*/
  406. #define BRKCT0 BRKCT01.BRKCT0_BYTE
  407. /*DEFINE REGISTER BITS*/
  408. #define BK0ALE BRKCT01.BRKCT0_BITS._BK0ALE
  409. #define BK1ALE BRKCT01.BRKCT0_BITS._BK1ALE
  410. #define BKPM BRKCT01.BRKCT0_BITS._BKPM
  411. #define BKEN0 BRKCT01.BRKCT0_BITS._BKEN0
  412. #define BKEN1 BRKCT01.BRKCT0_BITS._BKEN1
  413. #define BR0ALE BK0ALE
  414. #define BR1ALE BK1ALE
  415. /*******************************************************************************************/
  416. /* BREAKPOINT CONTROL REGISTER 1 */
  417. /*******************************************************************************************/
  418. __DECL__6812B32_H__ volatile union {
  419. struct {
  420. unsigned char _BK0RW:1;
  421. unsigned char _BK0RWE:1;
  422. unsigned char _BK1RW:1;
  423. unsigned char _BK1RWE:1;
  424. unsigned char _BKMBL:1;
  425. unsigned char _BKMBH:1;
  426. unsigned char _BKDBE:1;
  427. unsigned char BIT7:1;
  428. } BRKCT1_BITS;
  429. unsigned char BRKCT1_BYTE;
  430. }BRKCT11 _IO_AT(0x21);
  431. /*DEFINE REGISTER*/
  432. #define BRKCT1 BRKCT11.BRKCT1_BYTE
  433. /*DEFINE REGISTER BITS*/
  434. #define BK0RW BRKCT11.BRKCT1_BITS._BK0RW
  435. #define BK0RWE BRKCT11.BRKCT1_BITS._BK0RWE
  436. #define BK1RW BRKCT11.BRKCT1_BITS._BK1RW
  437. #define BK1RWE BRKCT11.BRKCT1_BITS._BK1RWE
  438. #define BKMBL BRKCT11.BRKCT1_BITS._BKMBL
  439. #define BKMBH BRKCT11.BRKCT1_BITS._BKMBH
  440. #define BKDBE BRKCT11.BRKCT1_BITS._BKDBE
  441. /*******************************************************************************************/
  442. /* BREAKPOINT DATA AND ADDRESS REGISTERS */
  443. /*******************************************************************************************/
  444. __DECL__6812B32_H__ volatile unsigned char BRKAH _IO_AT(0x22); /* Breakpoint Address Register, High Byte*/
  445. __DECL__6812B32_H__ volatile unsigned char BRKAL _IO_AT(0x23); /* Breakpoint Address Register, Low Byte*/
  446. __DECL__6812B32_H__ volatile unsigned char BRKDH _IO_AT(0x24); /* Breakpoint Data Register, High Byte*/
  447. __DECL__6812B32_H__ volatile unsigned char BRKDL _IO_AT(0x25); /* Breakpoint Data Register, Low Byte*/
  448. /*******************************************************************************************/
  449. /* PWM CLOCKS AND CONCATENATE */
  450. /*******************************************************************************************/
  451. __DECL__6812B32_H__ volatile union {
  452. struct {
  453. unsigned char _PCKB0:1;
  454. unsigned char _PCKB1:1;
  455. unsigned char _PCKB2:1;
  456. unsigned char _PCKA0:1;
  457. unsigned char _PCKA1:1;
  458. unsigned char _PCKA2:1;
  459. unsigned char _CON01:1;
  460. unsigned char _CON02:1;
  461. } PWCLK_BITS;
  462. unsigned char PWCLK_BYTE;
  463. }PWCLK1 _IO_AT(0x40);
  464. /*DEFINE FOR THE COMPATIBILITY WITH OLD VERSION*/
  465. /* "CKL" INSTEAD OF "CLK" */
  466. #define PWCKL_BITS PWCLK_BITS
  467. #define PWCKL_BYTE PWCLK_BYTE
  468. #define PWCKL1 PWCLK1
  469. #define PWCKL PWCLK
  470. /*DEFINE REGISTER*/
  471. #define PWCLK PWCLK1.PWCLK_BYTE
  472. /*DEFINE REGISTER BITS*/
  473. #define PCKB0 PWCLK1.PWCLK_BITS._PCKB0
  474. #define PCKB1 PWCLK1.PWCLK_BITS._PCKB1
  475. #define PCKB2 PWCLK1.PWCLK_BITS._PCKB2
  476. #define PCKA0 PWCLK1.PWCLK_BITS._PCKA0
  477. #define PCKA1 PWCLK1.PWCLK_BITS._PCKA1
  478. #define PCKA2 PWCLK1.PWCLK_BITS._PCKA2
  479. #define CON01 PWCLK1.PWCLK_BITS._CON01
  480. #define CON02 PWCLK1.PWCLK_BITS._CON02
  481. /*******************************************************************************************/
  482. /* PWM CLOCK SELECT AND POLARITY */
  483. /*******************************************************************************************/
  484. __DECL__6812B32_H__ volatile union {
  485. struct {
  486. unsigned char _PPOL0:1;
  487. unsigned char _PPOL1:1;
  488. unsigned char _PPOL2:1;
  489. unsigned char _PPOL3:1;
  490. unsigned char _PCLK0:1;
  491. unsigned char _PCLK1:1;
  492. unsigned char _PCLK2:1;
  493. unsigned char _PCLK3:1;
  494. } PWPOL_BITS;
  495. unsigned char PWPOL_BYTE;
  496. }PWPOL1 _IO_AT(0x41);
  497. /*DEFINE REGISTER*/
  498. #define PWPOL PWPOL1.PWPOL_BYTE
  499. /*DEFINE REGISTER BITS*/
  500. #define PPOL0 PWPOL1.PWPOL_BITS._PPOL0
  501. #define PPOL1 PWPOL1.PWPOL_BITS._PPOL1
  502. #define PPOL2 PWPOL1.PWPOL_BITS._PPOL2
  503. #define PPOL3 PWPOL1.PWPOL_BITS._PPOL3
  504. #define PCLK0 PWPOL1.PWPOL_BITS._PCLK0
  505. #define PCLK1 PWPOL1.PWPOL_BITS._PCLK1
  506. #define PCLK2 PWPOL1.PWPOL_BITS._PCLK2
  507. #define PCLK3 PWPOL1.PWPOL_BITS._PCLK3
  508. /*******************************************************************************************/
  509. /* PWM ENABLE */
  510. /*******************************************************************************************/
  511. __DECL__6812B32_H__ volatile union {
  512. struct {
  513. unsigned char _PWEN0:1;
  514. unsigned char _PWEN1:1;
  515. unsigned char _PWEN2:1;
  516. unsigned char _PWEN3:1;
  517. unsigned char BIT4:1;
  518. unsigned char BIT5:1;
  519. unsigned char BIT6:1;
  520. unsigned char BIT7:1;
  521. } PWEN_BITS;
  522. unsigned char PWEN_BYTE;
  523. }PWEN_1 _IO_AT(0x42);
  524. /*DEFINE REGISTER*/
  525. #define PWEN PWEN_1.PWEN_BYTE
  526. /*DEFINE REGISTER BITS*/
  527. #define PWEN0 PWEN_1.PWEN_BITS._PWEN0
  528. #define PWEN1 PWEN_1.PWEN_BITS._PWEN1
  529. #define PWEN2 PWEN_1.PWEN_BITS._PWEN2
  530. #define PWEN3 PWEN_1.PWEN_BITS._PWEN3
  531. /*******************************************************************************************/
  532. /* PWM PRESCALE COUNTER */
  533. /*******************************************************************************************/
  534. __DECL__6812B32_H__ volatile unsigned char PWPRES _IO_AT(0x43); /* PWM Prescale Counter */
  535. /*******************************************************************************************/
  536. /* PWM SCALE REGISTER 0 */
  537. /*******************************************************************************************/
  538. __DECL__6812B32_H__ volatile unsigned char PWSCAL0 _IO_AT(0x44); /* PWM Scale 0 */
  539. /*******************************************************************************************/
  540. /* PWM SCALE COUNTER VALUE 0 */
  541. /*******************************************************************************************/
  542. __DECL__6812B32_H__ volatile unsigned char PWSCNT0 _IO_AT(0x45); /* PWM Counter 0 */
  543. /*******************************************************************************************/
  544. /* PWM SCALE REGISTER 1 */
  545. /*******************************************************************************************/
  546. __DECL__6812B32_H__ volatile unsigned char PWSCAL1 _IO_AT(0x46); /* PWM Scale 1 */
  547. /*******************************************************************************************/
  548. /* PWM SCALE COUNTER VALUE 1 */
  549. /*******************************************************************************************/
  550. __DECL__6812B32_H__ volatile unsigned char PWSCNT1 _IO_AT(0x47); /* PWM Counter 1 */
  551. /*******************************************************************************************/
  552. /* PWM CHANNEL COUNTERS */
  553. /*******************************************************************************************/
  554. __DECL__6812B32_H__ volatile unsigned char PWCNT0 _IO_AT(0x48); /* PWM Channel Counter 0 */
  555. __DECL__6812B32_H__ volatile unsigned char PWCNT1 _IO_AT(0x49); /* PWM Channel Counter 1 */
  556. __DECL__6812B32_H__ volatile unsigned char PWCNT2 _IO_AT(0x4a); /* PWM Channel Counter 2 */
  557. __DECL__6812B32_H__ volatile unsigned char PWCNT3 _IO_AT(0x4b); /* PWM Channel Counter 3 */
  558. /*******************************************************************************************/
  559. /* PWM CHANNEL PERIOD REGISTERS */
  560. /*******************************************************************************************/
  561. __DECL__6812B32_H__ volatile unsigned char PWPER0 _IO_AT(0x4c); /* PWM Channel Period 0 */
  562. __DECL__6812B32_H__ volatile unsigned char PWPER1 _IO_AT(0x4d); /* PWM Channel Period 1 */
  563. __DECL__6812B32_H__ volatile unsigned char PWPER2 _IO_AT(0x4e); /* PWM Channel Period 2 */
  564. __DECL__6812B32_H__ volatile unsigned char PWPER3 _IO_AT(0x4f); /* PWM Channel Period 3 */
  565. /*******************************************************************************************/
  566. /* PWM CHANNEL DUTY REGISTERS */
  567. /*******************************************************************************************/
  568. __DECL__6812B32_H__ volatile unsigned char PWDTY0 _IO_AT(0x50); /* PWM Channel Duty 0 */
  569. __DECL__6812B32_H__ volatile unsigned char PWDTY1 _IO_AT(0x51); /* PWM Channel Duty 1 */
  570. __DECL__6812B32_H__ volatile unsigned char PWDTY2 _IO_AT(0x52); /* PWM Channel Duty 2 */
  571. __DECL__6812B32_H__ volatile unsigned char PWDTY3 _IO_AT(0x53); /* PWM Channel Duty 3 */
  572. /*******************************************************************************************/
  573. /* PWM CONTROL REGISTER */
  574. /*******************************************************************************************/
  575. __DECL__6812B32_H__ volatile union {
  576. struct {
  577. unsigned char _PSBCK:1;
  578. unsigned char _PUPP:1;
  579. unsigned char _RDPP:1;
  580. unsigned char _CENTR:1;
  581. unsigned char _PSWAI:1;
  582. unsigned char BIT5:1;
  583. unsigned char BIT6:1;
  584. unsigned char BIT7:1;
  585. } PWCTL_BITS;
  586. unsigned char PWCTL_BYTE;
  587. }PWCTL1 _IO_AT(0x54);
  588. /*DEFINE REGISTER*/
  589. #define PWCTL PWCTL1.PWCTL_BYTE
  590. /*DEFINE REGISTER BITS*/
  591. #define PSBCK PWCTL1.PWCTL_BITS._PSBCK
  592. #define PUPP PWCTL1.PWCTL_BITS._PUPP
  593. #define RDPP PWCTL1.PWCTL_BITS._RDPP
  594. #define CENTR PWCTL1.PWCTL_BITS._CENTR
  595. #define PSWAI PWCTL1.PWCTL_BITS._PSWAI
  596. /*******************************************************************************************/
  597. /* PWM SPECIAL MODE REGISTER (TEST) */
  598. /*******************************************************************************************/
  599. __DECL__6812B32_H__ volatile union {
  600. struct {
  601. unsigned char BIT0:1;
  602. unsigned char BIT1:1;
  603. unsigned char BIT2:1;
  604. unsigned char BIT3:1;
  605. unsigned char BIT4:1;
  606. unsigned char _DISCAL:1;
  607. unsigned char _DISCP:1;
  608. unsigned char _DISCR:1;
  609. } PWTST_BITS;
  610. unsigned char PWTST_BYTE;
  611. }PWTST1 _IO_AT(0x55);
  612. /*DEFINE REGISTER*/
  613. #define PWTST PWTST1.PWTST_BYTE
  614. /*DEFINE REGISTER BITS*/
  615. #define DISCAL PWTST1.PWTST_BITS._DISCAL
  616. #define DISCP PWTST1.PWTST_BITS._DISCP
  617. #define DISCR PWTST1.PWTST_BITS._DISCR
  618. /**************************************************************************************************/
  619. /* DEFINE PORT P */
  620. /**************************************************************************************************/
  621. __DECL__6812B32_H__ volatile unsigned char PORTP _IO_AT(0x56); /* port P */
  622. __DECL__6812B32_H__ volatile unsigned char DDRP _IO_AT(0x57); /* data direction port P */
  623. /**************************************************************************************************/
  624. /* ATD RESERVED REGISTERS */
  625. /**************************************************************************************************/
  626. __DECL__6812B32_H__ volatile unsigned char ATDCTL0 _IO_AT(0x60); /* A/D control register 0 */
  627. __DECL__6812B32_H__ volatile unsigned char ATDCTL1 _IO_AT(0x61); /* A/D control register 1 */
  628. /**************************************************************************************************/
  629. /* ATD CONTROL REGISTERS */
  630. /**************************************************************************************************/
  631. /**********ATD CONTROL REGISTER 2********/
  632. __DECL__6812B32_H__ volatile union {
  633. struct {
  634. unsigned char _ASCIF:1;
  635. unsigned char _ASCIE:1;
  636. unsigned char BIT2:1;
  637. unsigned char BIT3:1;
  638. unsigned char BIT4:1;
  639. unsigned char _ASWAI:1;
  640. unsigned char _AFFC:1;
  641. unsigned char _ADPU:1;
  642. } ATDCTL2_BITS;
  643. unsigned char ATDCTL2_BYTE;
  644. }ATDCTL21 _IO_AT(0x62);
  645. /*DEFINE REGISTER*/
  646. #define ATDCTL2 ATDCTL21.ATDCTL2_BYTE
  647. /*DEFINE REGISTER BITS*/
  648. #define ASCIF ATDCTL21.ATDCTL2_BITS._ASCIF
  649. #define ASCIE ATDCTL21.ATDCTL2_BITS._ASCIE
  650. #define ASWAI ATDCTL21.ATDCTL2_BITS._ASWAI
  651. #define AFFC ATDCTL21.ATDCTL2_BITS._AFFC
  652. #define ADPU ATDCTL21.ATDCTL2_BITS._ADPU
  653. /**********ATD CONTROL REGISTER 3********/
  654. __DECL__6812B32_H__ volatile union {
  655. struct {
  656. unsigned char _FRZ0:1;
  657. unsigned char _FRZ1:1;
  658. unsigned char BIT2:1;
  659. unsigned char BIT3:1;
  660. unsigned char BIT4:1;
  661. unsigned char BIT5:1;
  662. unsigned char BIT6:1;
  663. unsigned char BIT7:1;
  664. } ATDCTL3_BITS;
  665. unsigned char ATDCTL3_BYTE;
  666. }ATDCTL31 _IO_AT(0x63);
  667. /*DEFINE REGISTER*/
  668. #define ATDCTL3 ATDCTL31.ATDCTL3_BYTE
  669. /*DEFINE REGISTER BITS*/
  670. #define FRZ0 ATDCTL31.ATDCTL3_BITS._FRZ0
  671. #define FRZ1 ATDCTL31.ATDCTL3_BITS._FRZ1
  672. /**********ATD CONTROL REGISTER 4********/
  673. __DECL__6812B32_H__ volatile union {
  674. struct {
  675. unsigned char _PRS0:1;
  676. unsigned char _PRS1:1;
  677. unsigned char _PRS2:1;
  678. unsigned char _PRS3:1;
  679. unsigned char _PRS4:1;
  680. unsigned char _SMP0:1;
  681. unsigned char _SMP1:1;
  682. unsigned char BIT7:1;
  683. } ATDCTL4_BITS;
  684. unsigned char ATDCTL4_BYTE;
  685. }ATDCTL41 _IO_AT(0x64);
  686. /*DEFINE REGISTER*/
  687. #define ATDCTL4 ATDCTL41.ATDCTL4_BYTE
  688. /*DEFINE REGISTER BITS*/
  689. #define PRS0 ATDCTL41.ATDCTL4_BITS._PRS0
  690. #define PRS1 ATDCTL41.ATDCTL4_BITS._PRS1
  691. #define PRS2 ATDCTL41.ATDCTL4_BITS._PRS2
  692. #define PRS3 ATDCTL41.ATDCTL4_BITS._PRS3
  693. #define PRS4 ATDCTL41.ATDCTL4_BITS._PRS4
  694. #define SMP0 ATDCTL41.ATDCTL4_BITS._SMP0
  695. #define SMP1 ATDCTL41.ATDCTL4_BITS._SMP1
  696. /**********ATD CONTROL REGISTER 5********/
  697. __DECL__6812B32_H__ volatile union {
  698. struct {
  699. unsigned char _CA:1;
  700. unsigned char _CB:1;
  701. unsigned char _CC:1;
  702. unsigned char _CD:1;
  703. unsigned char _MULT:1;
  704. unsigned char _SCAN:1;
  705. unsigned char _S8CM:1;
  706. unsigned char BIT7:1;
  707. } ATDCTL5_BITS;
  708. unsigned char ATDCTL5_BYTE;
  709. }ATDCTL51 _IO_AT(0x65);
  710. /*DEFINE REGISTER*/
  711. #define ATDCTL5 ATDCTL51.ATDCTL5_BYTE
  712. /*DEFINE REGISTER BITS*/
  713. #define CA ATDCTL51.ATDCTL5_BITS._CA
  714. #define CB ATDCTL51.ATDCTL5_BITS._CB
  715. #define CC ATDCTL51.ATDCTL5_BITS._CC
  716. #define CD ATDCTL51.ATDCTL5_BITS._CD
  717. #define MULT ATDCTL51.ATDCTL5_BITS._MULT
  718. #define SCAN ATDCTL51.ATDCTL5_BITS._SCAN
  719. #define S8CM ATDCTL51.ATDCTL5_BITS._S8CM
  720. /**************************************************************************************************/
  721. /* ATD STATUS REGISTER */
  722. /**************************************************************************************************/
  723. __DECL__6812B32_H__ volatile union {
  724. struct {
  725. unsigned int _CC0:1;
  726. unsigned int _CC1:1;
  727. unsigned int _CC2:1;
  728. unsigned int BIT3:1;
  729. unsigned int BIT4:1;
  730. unsigned int BIT5:1;
  731. unsigned int BIT6:1;
  732. unsigned int _SCF:1;
  733. unsigned int _CCF0:1;
  734. unsigned int _CCF1:1;
  735. unsigned int _CCF2:1;
  736. unsigned int _CCF3:1;
  737. unsigned int _CCF4:1;
  738. unsigned int _CCF5:1;
  739. unsigned int _CCF6:1;
  740. unsigned int _CCF7:1;
  741. } ATDSTAT_BITS;
  742. unsigned int ATDSTAT_WORD;
  743. }ATDSTAT1 _IO_AT(0x66);
  744. /*DEFINE REGISTER*/
  745. #define ATDSTAT ATDSTAT1.ATDSTAT_WORD
  746. /*DEFINE REGISTER BITS*/
  747. #define CC0 ATDSTAT1.ATDSTAT_BITS._CC0
  748. #define CC1 ATDSTAT1.ATDSTAT_BITS._CC1
  749. #define CC2 ATDSTAT1.ATDSTAT_BITS._CC2
  750. #define SCF ATDSTAT1.ATDSTAT_BITS._SCF
  751. #define CCF0 ATDSTAT1.ATDSTAT_BITS._CCF0
  752. #define CCF1 ATDSTAT1.ATDSTAT_BITS._CCF1
  753. #define CCF2 ATDSTAT1.ATDSTAT_BITS._CCF2
  754. #define CCF3 ATDSTAT1.ATDSTAT_BITS._CCF3
  755. #define CCF4 ATDSTAT1.ATDSTAT_BITS._CCF4
  756. #define CCF5 ATDSTAT1.ATDSTAT_BITS._CCF5
  757. #define CCF6 ATDSTAT1.ATDSTAT_BITS._CCF6
  758. #define CCF7 ATDSTAT1.ATDSTAT_BITS._CCF7
  759. /*******************************************************************************************/
  760. /* ATD TEST REGISTER */
  761. /*******************************************************************************************/
  762. /********ATD TEST REGISTER HIGH*********/
  763. __DECL__6812B32_H__ volatile union {
  764. struct {
  765. unsigned char _SAR2:1;
  766. unsigned char _SAR3:1;
  767. unsigned char _SAR4:1;
  768. unsigned char _SAR5:1;
  769. unsigned char _SAR6:1;
  770. unsigned char _SAR7:1;
  771. unsigned char _SAR8:1;
  772. unsigned char _SAR9:1;
  773. } ATDTSTH_BITS;
  774. unsigned char ATDTSTH_BYTE;
  775. } ATDTSTH1 _IO_AT(0x68);
  776. /*DEFINE REGISTER*/
  777. #define ATDTSTH ATDTSTH1.ATDTSTH_BYTE
  778. /*DEFINE REGISTER BITS*/
  779. #define SAR2 ATDTSTH1.ATDTSTH_BITS._SAR2
  780. #define SAR3 ATDTSTH1.ATDTSTH_BITS._SAR3
  781. #define SAR4 ATDTSTH1.ATDTSTH_BITS._SAR4
  782. #define SAR5 ATDTSTH1.ATDTSTH_BITS._SAR5
  783. #define SAR6 ATDTSTH1.ATDTSTH_BITS._SAR6
  784. #define SAR7 ATDTSTH1.ATDTSTH_BITS._SAR7
  785. #define SAR8 ATDTSTH1.ATDTSTH_BITS._SAR8
  786. #define SAR9 ATDTSTH1.ATDTSTH_BITS._SAR9
  787. /********ATD TEST REGISTER LOW**********/
  788. __DECL__6812B32_H__ volatile union {
  789. struct {
  790. unsigned char _TST0:1;
  791. unsigned char _TST1:1;
  792. unsigned char _TST2:1;
  793. unsigned char _TST3:1;
  794. unsigned char _TSTOUT:1;
  795. unsigned char _RST:1;
  796. unsigned char _SAR0:1;
  797. unsigned char _SAR1:1;
  798. } ATDTSTL_BITS;
  799. unsigned char ATDTSTL_BYTE;
  800. } ATDTSTL1 _IO_AT(0x69);
  801. /*DEFINE REGISTER*/
  802. #define ATDTSTL ATDTSTL1.ATDTSTL_BYTE
  803. /*DEFINE REGISTER BITS*/
  804. #define TST0 ATDTSTL1.ATDTSTL_BITS._TST0
  805. #define TST1 ATDTSTL1.ATDTSTL_BITS._TST1
  806. #define TST2 ATDTSTL1.ATDTSTL_BITS._TST2
  807. #define TST3 ATDTSTL1.ATDTSTL_BITS._TST3
  808. #define TSTOUT ATDTSTL1.ATDTSTL_BITS._TSTOUT
  809. #define RST ATDTSTL1.ATDTSTL_BITS._RST
  810. #define SAR0 ATDTSTL1.ATDTSTL_BITS._SAR0
  811. #define SAR1 ATDTSTL1.ATDTSTL_BITS._SAR1
  812. /*******************************************************************************************/
  813. /* PORT AD DATA INPUT REGISTER */
  814. /*******************************************************************************************/
  815. __DECL__6812B32_H__ volatile unsigned char PORTAD _IO_AT(0x6f); /* port AD data input register */
  816. /*******************************************************************************************/
  817. /* ADT CONVERTER RESULT REGISTERS */
  818. /*******************************************************************************************/
  819. __DECL__6812B32_H__ volatile unsigned char ADR0H _IO_AT(0x70); /* A/D result 0 */
  820. __DECL__6812B32_H__ volatile unsigned char ADR1H _IO_AT(0x72); /* A/D result 1 */
  821. __DECL__6812B32_H__ volatile unsigned char ADR2H _IO_AT(0x74); /* A/D result 2 */
  822. __DECL__6812B32_H__ volatile unsigned char ADR3H _IO_AT(0x76); /* A/D result 3 */
  823. __DECL__6812B32_H__ volatile unsigned char ADR4H _IO_AT(0x78); /* A/D result 4 */
  824. __DECL__6812B32_H__ volatile unsigned char ADR5H _IO_AT(0x7a); /* A/D result 5 */
  825. __DECL__6812B32_H__ volatile unsigned char ADR6H _IO_AT(0x7c); /* A/D result 6 */
  826. __DECL__6812B32_H__ volatile unsigned char ADR7H _IO_AT(0x7e); /* A/D result 7 */
  827. /*******************************************************************************************/
  828. /* TIMER INPUT/OUTPUT COMPARE SELECT */
  829. /*******************************************************************************************/
  830. __DECL__6812B32_H__ volatile unsigned char TIOS _IO_AT(0x80);
  831. /*******************************************************************************************/
  832. /* TIMER COMPARE FORCE REGISTER */
  833. /*******************************************************************************************/
  834. __DECL__6812B32_H__ volatile unsigned char CFORC _IO_AT(0x81);
  835. /*******************************************************************************************/
  836. /* OUTPUT COMPARE 7 MASK REGISTER */
  837. /*******************************************************************************************/
  838. __DECL__6812B32_H__ volatile unsigned char OC7M _IO_AT(0x82);
  839. /*******************************************************************************************/
  840. /* OUTPUT COMPARE 7 DATA REGISTER */
  841. /*******************************************************************************************/
  842. __DECL__6812B32_H__ volatile unsigned char OC7D _IO_AT(0x83);
  843. /*******************************************************************************************/
  844. /* OUTPUT COMPARE 7 DATA REGISTER */
  845. /*******************************************************************************************/
  846. __DECL__6812B32_H__ volatile unsigned int TCNT _IO_AT(0x84);
  847. /*******************************************************************************************/
  848. /* TIMER SYSTEM CONTROL REGISTER */
  849. /*******************************************************************************************/
  850. __DECL__6812B32_H__ volatile union {
  851. struct {
  852. unsigned char BIT0:1;
  853. unsigned char BIT1:1;
  854. unsigned char BIT2:1;
  855. unsigned char BIT3:1;
  856. unsigned char _TFFCA:1;
  857. unsigned char _TSBCK:1;
  858. unsigned char _TSWAI:1;
  859. unsigned char _TEN:1;
  860. } TSCR_BITS;
  861. unsigned char TSCR_BYTE;
  862. } TSCR1 _IO_AT(0x86);
  863. /*DEFINE REGISTER*/
  864. #define TSCR TSCR1.TSCR_BYTE
  865. /*DEFINE REGISTER BITS*/
  866. #define TFFCA TSCR1.TSCR_BITS._TFFCA
  867. #define TSBCK TSCR1.TSCR_BITS._TSBCK
  868. #define TSWAI TSCR1.TSCR_BITS._TSWAI
  869. #define TEN TSCR1.TSCR_BITS._TEN
  870. /*******************************************************************************************/
  871. /* TIMER QUEUE CONTROL REGISTER (RESERVED) */
  872. /*******************************************************************************************/
  873. __DECL__6812B32_H__ volatile unsigned char TQCR _IO_AT(0x87); /* timer queue control */
  874. /*******************************************************************************************/
  875. /* TIMER CONTROL REGISTER 1 */
  876. /*******************************************************************************************/
  877. __DECL__6812B32_H__ volatile union {
  878. struct {
  879. unsigned char _OL4:1;
  880. unsigned char _OM4:1;
  881. unsigned char _OL5:1;
  882. unsigned char _OM5:1;
  883. unsigned char _OL6:1;
  884. unsigned char _OM6:1;
  885. unsigned char _OL7:1;
  886. unsigned char _OM7:1;
  887. } TCTL1_BITS;
  888. unsigned char TCTL1_BYTE;
  889. } TCTL11 _IO_AT(0x88);
  890. /*DEFINE REGISTER*/
  891. #define TCTL1 TCTL11.TCTL1_BYTE
  892. /*DEFINE REGISTER BITS*/
  893. #define OL4 TCTL11.TCTL1_BITS._OL4
  894. #define OM4 TCTL11.TCTL1_BITS._OM4
  895. #define OL5 TCTL11.TCTL1_BITS._OL5
  896. #define OM5 TCTL11.TCTL1_BITS._OM5
  897. #define OL6 TCTL11.TCTL1_BITS._OL6
  898. #define OM6 TCTL11.TCTL1_BITS._OM6
  899. #define OL7 TCTL11.TCTL1_BITS._OL7
  900. #define OM7 TCTL11.TCTL1_BITS._OM7
  901. /*******************************************************************************************/
  902. /* TIMER CONTROL REGISTER 2 */
  903. /*******************************************************************************************/
  904. __DECL__6812B32_H__ volatile union {
  905. struct {
  906. unsigned char _OL0:1;
  907. unsigned char _OM0:1;
  908. unsigned char _OL1:1;
  909. unsigned char _OM1:1;
  910. unsigned char _OL2:1;
  911. unsigned char _OM2:1;
  912. unsigned char _OL3:1;
  913. unsigned char _OM3:1;
  914. } TCTL2_BITS;
  915. unsigned char TCTL2_BYTE;
  916. } TCTL21 _IO_AT(0x89);
  917. /*DEFINE REGISTER*/
  918. #define TCTL2 TCTL21.TCTL2_BYTE
  919. /*DEFINE REGISTER BITS*/
  920. #define OL0 TCTL21.TCTL2_BITS._OL0
  921. #define OM0 TCTL21.TCTL2_BITS._OM0
  922. #define OL1 TCTL21.TCTL2_BITS._OL1
  923. #define OM1 TCTL21.TCTL2_BITS._OM1
  924. #define OL2 TCTL21.TCTL2_BITS._OL2
  925. #define OM2 TCTL21.TCTL2_BITS._OM2
  926. #define OL3 TCTL21.TCTL2_BITS._OL3
  927. #define OM3 TCTL21.TCTL2_BITS._OM3
  928. /*******************************************************************************************/
  929. /* TIMER CONTROL REGISTER 3 */
  930. /*******************************************************************************************/
  931. __DECL__6812B32_H__ volatile union {
  932. struct {
  933. unsigned char _EDG4A:1;
  934. unsigned char _EDG4B:1;
  935. unsigned char _EDG5A:1;
  936. unsigned char _EDG5B:1;
  937. unsigned char _EDG6A:1;
  938. unsigned char _EDG6B:1;
  939. unsigned char _EDG7A:1;
  940. unsigned char _EDG7B:1;
  941. } TCTL3_BITS;
  942. unsigned char TCTL3_BYTE;
  943. } TCTL31 _IO_AT(0x8A);
  944. /*DEFINE REGISTER*/
  945. #define TCTL3 TCTL31.TCTL3_BYTE
  946. /*DEFINE REGISTER BITS*/
  947. #define EDG4A TCTL31.TCTL3_BITS._EDG4A
  948. #define EDG4B TCTL31.TCTL3_BITS._EDG4B
  949. #define EDG5A TCTL31.TCTL3_BITS._EDG5A
  950. #define EDG5B TCTL31.TCTL3_BITS._EDG5B
  951. #define EDG6A TCTL31.TCTL3_BITS._EDG6A
  952. #define EDG6B TCTL31.TCTL3_BITS._EDG6B
  953. #define EDG7A TCTL31.TCTL3_BITS._EDG7A
  954. #define EDG7B TCTL31.TCTL3_BITS._EDG7B
  955. /*******************************************************************************************/
  956. /* TIMER CONTROL REGISTER 4 */
  957. /*******************************************************************************************/
  958. __DECL__6812B32_H__ volatile union {
  959. struct {
  960. unsigned char _EDG0A:1;
  961. unsigned char _EDG0B:1;
  962. unsigned char _EDG1A:1;
  963. unsigned char _EDG1B:1;
  964. unsigned char _EDG2A:1;
  965. unsigned char _EDG2B:1;
  966. unsigned char _EDG3A:1;
  967. unsigned char _EDG3B:1;
  968. } TCTL4_BITS;
  969. unsigned char TCTL4_BYTE;
  970. } TCTL41 _IO_AT(0x8B);
  971. /*DEFINE REGISTER*/
  972. #define TCTL4 TCTL41.TCTL4_BYTE
  973. /*DEFINE REGISTER BITS*/
  974. #define EDG0A TCTL41.TCTL4_BITS._EDG0A
  975. #define EDG0B TCTL41.TCTL4_BITS._EDG0B
  976. #define EDG1A TCTL41.TCTL4_BITS._EDG1A
  977. #define EDG1B TCTL41.TCTL4_BITS._EDG1B
  978. #define EDG2A TCTL41.TCTL4_BITS._EDG2A
  979. #define EDG2B TCTL41.TCTL4_BITS._EDG2B
  980. #define EDG3A TCTL41.TCTL4_BITS._EDG3A
  981. #define EDG3B TCTL41.TCTL4_BITS._EDG3B
  982. /*******************************************************************************************/
  983. /* TIMER INTERRUPT MASK 1 */
  984. /*******************************************************************************************/
  985. __DECL__6812B32_H__ volatile union {
  986. struct {
  987. unsigned char _C0I:1;
  988. unsigned char _C1I:1;
  989. unsigned char _C2I:1;
  990. unsigned char _C3I:1;
  991. unsigned char _C4I:1;
  992. unsigned char _C5I:1;
  993. unsigned char _C6I:1;
  994. unsigned char _C7I:1;
  995. } TMSK1_BITS;
  996. unsigned char TMSK1_BYTE;
  997. } TMSK11 _IO_AT(0x8C);
  998. /*DEFINE REGISTER*/
  999. #define TMSK1 TMSK11.TMSK1_BYTE
  1000. /*DEFINE REGISTER BITS*/
  1001. #define C0I TMSK11.TMSK1_BITS._C0I
  1002. #define C1I TMSK11.TMSK1_BITS._C1I
  1003. #define C2I TMSK11.TMSK1_BITS._C2I
  1004. #define C3I TMSK11.TMSK1_BITS._C3I
  1005. #define C4I TMSK11.TMSK1_BITS._C4I
  1006. #define C5I TMSK11.TMSK1_BITS._C5I
  1007. #define C6I TMSK11.TMSK1_BITS._C6I
  1008. #define C7I TMSK11.TMSK1_BITS._C7I
  1009. /*******************************************************************************************/
  1010. /* TIMER INTERRUPT MASK 2 */
  1011. /*******************************************************************************************/
  1012. __DECL__6812B32_H__ volatile union {
  1013. struct {
  1014. unsigned char _PR0:1;
  1015. unsigned char _PR1:1;
  1016. unsigned char _PR2:1;
  1017. unsigned char _TCRE:1;
  1018. unsigned char _RDPT:1;
  1019. unsigned char _PUPT:1;
  1020. unsigned char _BIT6:1;
  1021. unsigned char _TOI:1;
  1022. } TMSK2_BITS;
  1023. unsigned char TMSK2_BYTE;
  1024. } TMSK21 _IO_AT(0x8D);
  1025. /*DEFINE REGISTER*/
  1026. #define TMSK2 TMSK21.TMSK2_BYTE
  1027. /*DEFINE REGISTER BITS*/
  1028. #define PR0 TMSK21.TMSK2_BITS._PR0
  1029. #define PR1 TMSK21.TMSK2_BITS._PR1
  1030. #define PR2 TMSK21.TMSK2_BITS._PR2
  1031. #define TCRE TMSK21.TMSK2_BITS._TCRE
  1032. #define RDPT TMSK21.TMSK2_BITS._RDPT
  1033. #define PUPT TMSK21.TMSK2_BITS._PUPT
  1034. #define TOI TMSK21.TMSK2_BITS._TOI
  1035. /*******************************************************************************************/
  1036. /* TIMER INTERRUPT FLAG 1 */
  1037. /*******************************************************************************************/
  1038. __DECL__6812B32_H__ volatile union {
  1039. struct {
  1040. unsigned char _C0F:1;
  1041. unsigned char _C1F:1;
  1042. unsigned char _C2F:1;
  1043. unsigned char _C3F:1;
  1044. unsigned char _C4F:1;
  1045. unsigned char _C5F:1;
  1046. unsigned char _C6F:1;
  1047. unsigned char _C7F:1;
  1048. } TFLG1_BITS;
  1049. unsigned char TFLG1_BYTE;
  1050. } TFLG11 _IO_AT(0x8E);
  1051. /*DEFINE REGISTER*/
  1052. #define TFLG1 TFLG11.TFLG1_BYTE
  1053. /*DEFINE REGISTER BITS*/
  1054. #define C0F TFLG11.TFLG1_BITS._C0F
  1055. #define C1F TFLG11.TFLG1_BITS._C1F
  1056. #define C2F TFLG11.TFLG1_BITS._C2F
  1057. #define C3F TFLG11.TFLG1_BITS._C3F
  1058. #define C4F TFLG11.TFLG1_BITS._C4F
  1059. #define C5F TFLG11.TFLG1_BITS._C5F
  1060. #define C6F TFLG11.TFLG1_BITS._C6F
  1061. #define C7F TFLG11.TFLG1_BITS._C7F
  1062. /*******************************************************************************************/
  1063. /* TIMER INTERRUPT FLAG 2 */
  1064. /*******************************************************************************************/
  1065. __DECL__6812B32_H__ volatile union {
  1066. struct {
  1067. unsigned char BIT0:1;
  1068. unsigned char BIT1:1;
  1069. unsigned char BIT2:1;
  1070. unsigned char BIT3:1;
  1071. unsigned char BIT4:1;
  1072. unsigned char BIT5:1;
  1073. unsigned char BIT6:1;
  1074. unsigned char _TOF:1;
  1075. } TFLG2_BITS;
  1076. unsigned char TFLG2_BYTE;
  1077. } TFLG21 _IO_AT(0x8F);
  1078. /*DEFINE REGISTER*/
  1079. #define TFLG2 TFLG21.TFLG2_BYTE
  1080. /*DEFINE REGISTER BITS*/
  1081. #define TOF TFLG21.TFLG2_BITS._TOF
  1082. /*******************************************************************************************/
  1083. /* TIMER INPUT CAPTURE/OUTPUT REGISTERS */
  1084. /*******************************************************************************************/
  1085. /*****TIMER INPUT CAPTURE/OUTPUT REGISTER 0*****/
  1086. __DECL__6812B32_H__ volatile unsigned int TC0 _IO_AT(0x90);
  1087. /*****TIMER INPUT CAPTURE/OUTPUT REGISTER 1*****/
  1088. __DECL__6812B32_H__ volatile unsigned int TC1 _IO_AT(0x92);
  1089. /*****TIMER INPUT CAPTURE/OUTPUT REGISTER 2*****/
  1090. __DECL__6812B32_H__ volatile unsigned int TC2 _IO_AT(0x94);
  1091. /*****TIMER INPUT CAPTURE/OUTPUT REGISTER 3*****/
  1092. __DECL__6812B32_H__ volatile unsigned int TC3 _IO_AT(0x96);
  1093. /*****TIMER INPUT CAPTURE/OUTPUT REGISTER 4*****/
  1094. __DECL__6812B32_H__ volatile unsigned int TC4 _IO_AT(0x98);
  1095. /*****TIMER INPUT CAPTURE/OUTPUT REGISTER 5*****/
  1096. __DECL__6812B32_H__ volatile unsigned int TC5 _IO_AT(0x9a);
  1097. /*****TIMER INPUT CAPTURE/OUTPUT REGISTER 6*****/
  1098. __DECL__6812B32_H__ volatile unsigned int TC6 _IO_AT(0x9c);
  1099. /*****TIMER INPUT CAPTURE/OUTPUT REGISTER 7*****/
  1100. __DECL__6812B32_H__ volatile unsigned int TC7 _IO_AT(0x9e);
  1101. /*******************************************************************************************/
  1102. /* PULSE ACCUMULATOR CONTROL REGISTER */
  1103. /*******************************************************************************************/
  1104. __DECL__6812B32_H__ volatile union {
  1105. struct {
  1106. unsigned char _PAI:1;
  1107. unsigned char _PAOVI:1;
  1108. unsigned char _CLOCK0:1;
  1109. unsigned char _CLOCK1:1;
  1110. unsigned char _PEDGE:1;
  1111. unsigned char _PAMOD:1;
  1112. unsigned char _PAEN:1;
  1113. unsigned char BIT7:1;
  1114. } PACTL_BITS;
  1115. unsigned char PACTL_BYTE;
  1116. } PACTL1 _IO_AT(0xA0);
  1117. /*DEFINE REGISTER*/
  1118. #define PACTL PACTL1.PACTL_BYTE
  1119. /*DEFINE REGISTER BITS*/
  1120. #define PAI PACTL1.PACTL_BITS._PAI
  1121. #define PAOVI PACTL1.PACTL_BITS._PAOVI
  1122. #define CLOCK0 PACTL1.PACTL_BITS._CLOCK0
  1123. #define CLOCK1 PACTL1.PACTL_BITS._CLOCK1
  1124. #define PEDGE PACTL1.PACTL_BITS._PEDGE
  1125. #define PAMOD PACTL1.PACTL_BITS._PAMOD
  1126. #define PAEN PACTL1.PACTL_BITS._PAEN
  1127. /*******************************************************************************************/
  1128. /* PULSE ACCUMULATOR FLAG REGISTER */
  1129. /*******************************************************************************************/
  1130. __DECL__6812B32_H__ volatile union {
  1131. struct {
  1132. unsigned char _PAIF:1;
  1133. unsigned char _PAOVF:1;
  1134. unsigned char BIT2:1;
  1135. unsigned char BIT3:1;
  1136. unsigned char BIT4:1;
  1137. unsigned char BIT5:1;
  1138. unsigned char BIT6:1;
  1139. unsigned char BIT7:1;
  1140. } PAFLG_BITS;
  1141. unsigned char PAFLG_BYTE;
  1142. } PAFLG1 _IO_AT(0xA1);
  1143. /*DEFINE REGISTER*/
  1144. #define PAFLG PAFLG1.PAFLG_BYTE
  1145. /*DEFINE REGISTER BITS*/
  1146. #define PAIF PAFLG1.PAFLG_BITS._PAIF
  1147. #define PAOVF PAFLG1.PAFLG_BITS._PAOVF
  1148. /*******************************************************************************************/
  1149. /* 16-BITS PULSE ACCUMULATOR COUNT REGISTER */
  1150. /*******************************************************************************************/
  1151. __DECL__6812B32_H__ volatile unsigned int PACNT _IO_AT(0xa2);
  1152. /*******************************************************************************************/
  1153. /* TIMER TEST REGISTER */
  1154. /*******************************************************************************************/
  1155. __DECL__6812B32_H__ volatile union {
  1156. struct {
  1157. unsigned char _PCBYP:1;
  1158. unsigned char _TCBYP:1;
  1159. unsigned char BIT2:1;
  1160. unsigned char BIT3:1;
  1161. unsigned char BIT4:1;
  1162. unsigned char BIT5:1;
  1163. unsigned char BIT6:1;
  1164. unsigned char BIT7:1;
  1165. } TIMTST_BITS;
  1166. unsigned char TIMTST_BYTE;
  1167. } TIMTST1 _IO_AT(0xAD);
  1168. /*DEFINE REGISTER*/
  1169. #define TIMTST TIMTST1.TIMTST_BYTE
  1170. /*DEFINE REGISTER BITS*/
  1171. #define PCBYP TIMTST1.TIMTST_BITS._PCBYP
  1172. #define TCBYP TIMTST1.TIMTST_BITS._TCBYP
  1173. /*******************************************************************************************/
  1174. /* TIMER PORT DATA REGISTER */
  1175. /*******************************************************************************************/
  1176. /*****PORT T DEFINITION*****/
  1177. __DECL__6812B32_H__ volatile union {
  1178. struct {
  1179. unsigned char _I_OC0:1;
  1180. unsigned char _I_OC1:1;
  1181. unsigned char _I_OC2:1;
  1182. unsigned char _I_OC3:1;
  1183. unsigned char _I_OC4:1;
  1184. unsigned char _I_OC5:1;
  1185. unsigned char _I_OC6:1;
  1186. unsigned char _I_OC7:1;
  1187. } PORTT_BITS;
  1188. unsigned char PORTT_BYTE;
  1189. } PORTT1 _IO_AT(0xAE);
  1190. /*DEFINE REGISTER*/
  1191. #define PORTT PORTT1.PORTT_BYTE
  1192. /*DEFINE REGISTER BITS*/
  1193. #define I_OC0 PORTT1.PORTT_BITS._I_OC0
  1194. #define I_OC1 PORTT1.PORTT_BITS._I_OC1
  1195. #define I_OC2 PORTT1.PORTT_BITS._I_OC2
  1196. #define I_OC3 PORTT1.PORTT_BITS._I_OC3
  1197. #define I_OC4 PORTT1.PORTT_BITS._I_OC4
  1198. #define I_OC5 PORTT1.PORTT_BITS._I_OC5
  1199. #define I_OC6 PORTT1.PORTT_BITS._I_OC6
  1200. #define I_OC7 PORTT1.PORTT_BITS._I_OC7
  1201. /*****DATA DIRECTION REGISTER FOR TIMER OUT*****/
  1202. __DECL__6812B32_H__ volatile unsigned char DDRT _IO_AT(0xaf);
  1203. /*******************************************************************************************/
  1204. /* SCI BAUD RATE CONTROL REGISTERS */
  1205. /*******************************************************************************************/
  1206. /*****SCI BAUD RATE CONTROL REGISTER HIGH*****/
  1207. __DECL__6812B32_H__ volatile union {
  1208. struct {
  1209. unsigned char _SBR8:1;
  1210. unsigned char _SBR9:1;
  1211. unsigned char _SBR10:1;
  1212. unsigned char _SBR11:1;
  1213. unsigned char _SBR12:1;
  1214. unsigned char _BRLD:1;
  1215. unsigned char _BSPL:1;
  1216. unsigned char _BTST:1;
  1217. } SC0BDH_BITS;
  1218. unsigned char SC0BDH_BYTE;
  1219. } SC0BDH1 _IO_AT(0xC0);
  1220. /*DEFINE REGISTER*/
  1221. #define SC0BDH SC0BDH1.SC0BDH_BYTE
  1222. /*DEFINE REGISTER BITS*/
  1223. #define SBR8 SC0BDH1.SC0BDH_BITS._SBR8
  1224. #define SBR9 SC0BDH1.SC0BDH_BITS._SBR9
  1225. #define SBR10 SC0BDH1.SC0BDH_BITS._SBR10
  1226. #define SBR11 SC0BDH1.SC0BDH_BITS._SBR11
  1227. #define SBR12 SC0BDH1.SC0BDH_BITS._SBR12
  1228. #define BRLD SC0BDH1.SC0BDH_BITS._BRLD
  1229. #define BSPL SC0BDH1.SC0BDH_BITS._BSPL
  1230. #define BTST SC0BDH1.SC0BDH_BITS._BTST
  1231. /*****SCI BAUD RATE CONTROL REGISTER LOW*****/
  1232. __DECL__6812B32_H__ volatile union {
  1233. struct {
  1234. unsigned char _SBR0:1;
  1235. unsigned char _SBR1:1;
  1236. unsigned char _SBR2:1;
  1237. unsigned char _SBR3:1;
  1238. unsigned char _SBR4:1;
  1239. unsigned char _SBR5:1;
  1240. unsigned char _SBR6:1;
  1241. unsigned char _SBR7:1;
  1242. } SC0BDL_BITS;
  1243. unsigned char SC0BDL_BYTE;
  1244. } SC0BDL1 _IO_AT(0xC1);
  1245. /*DEFINE REGISTER*/
  1246. #define SC0BDL SC0BDL1.SC0BDL_BYTE
  1247. /*DEFINE REGISTER BITS*/
  1248. #define SBR0 SC0BDL1.SC0BDL_BITS._SBR0
  1249. #define SBR1 SC0BDL1.SC0BDL_BITS._SBR1
  1250. #define SBR2 SC0BDL1.SC0BDL_BITS._SBR2
  1251. #define SBR3 SC0BDL1.SC0BDL_BITS._SBR3
  1252. #define SBR4 SC0BDL1.SC0BDL_BITS._SBR4
  1253. #define SBR5 SC0BDL1.SC0BDL_BITS._SBR5
  1254. #define SBR6 SC0BDL1.SC0BDL_BITS._SBR6
  1255. #define SBR7 SC0BDL1.SC0BDL_BITS._SBR7
  1256. /*******************************************************************************************/
  1257. /* SCI CONTROL REGISTERS */
  1258. /*******************************************************************************************/
  1259. /*****SCI CONTROL REGISTER 1*****/
  1260. __DECL__6812B32_H__ volatile union {
  1261. struct {
  1262. unsigned char _PT:1;
  1263. unsigned char _PE:1;
  1264. unsigned char _ILT:1;
  1265. unsigned char _WAKE:1;
  1266. unsigned char _M:1;
  1267. unsigned char _RSRC:1;
  1268. unsigned char _WOMS:1;
  1269. unsigned char _LOOPS:1;
  1270. } SC0CR1_BITS;
  1271. unsigned char SC0CR1_BYTE;
  1272. } SC0CR11 _IO_AT(0xC2);
  1273. /*DEFINE REGISTER*/
  1274. #define SC0CR1 SC0CR11.SC0CR1_BYTE
  1275. /*DEFINE REGISTER BITS*/
  1276. #define PT SC0CR11.SC0CR1_BITS._PT
  1277. #define PE SC0CR11.SC0CR1_BITS._PE
  1278. #define ILT SC0CR11.SC0CR1_BITS._ILT
  1279. #define WAKE SC0CR11.SC0CR1_BITS._WAKE
  1280. #define M SC0CR11.SC0CR1_BITS._M
  1281. #define RSRC SC0CR11.SC0CR1_BITS._RSRC
  1282. #define WOMS SC0CR11.SC0CR1_BITS._WOMS
  1283. #define LOOPS SC0CR11.SC0CR1_BITS._LOOPS
  1284. /*****SCI CONTROL REGISTER 2*****/
  1285. __DECL__6812B32_H__ volatile union {
  1286. struct {
  1287. unsigned char _SBK:1;
  1288. unsigned char _RWU:1;
  1289. unsigned char _RE:1;
  1290. unsigned char _TE:1;
  1291. unsigned char _ILIE:1;
  1292. unsigned char _RIE:1;
  1293. unsigned char _TCIE:1;
  1294. unsigned char _TIE:1;
  1295. } SC0CR2_BITS;
  1296. unsigned char SC0CR2_BYTE;
  1297. } SC0CR21 _IO_AT(0xC3);
  1298. /*DEFINE REGISTER*/
  1299. #define SC0CR2 SC0CR21.SC0CR2_BYTE
  1300. /*DEFINE REGISTER BITS*/
  1301. #define SBK SC0CR21.SC0CR2_BITS._SBK
  1302. #define RWU SC0CR21.SC0CR2_BITS._RWU
  1303. #define RE SC0CR21.SC0CR2_BITS._RE
  1304. #define TE SC0CR21.SC0CR2_BITS._TE
  1305. #define ILIE SC0CR21.SC0CR2_BITS._ILIE
  1306. #define RIE SC0CR21.SC0CR2_BITS._RIE
  1307. #define TCIE SC0CR21.SC0CR2_BITS._TCIE
  1308. #define TIE SC0CR21.SC0CR2_BITS._TIE
  1309. /*******************************************************************************************/
  1310. /* SCI STATUS REGISTERS */
  1311. /*******************************************************************************************/
  1312. /*****SCI STATUS REGISTER 1*****/
  1313. __DECL__6812B32_H__ volatile union {
  1314. struct {
  1315. unsigned char _PF:1;
  1316. unsigned char _FE:1;
  1317. unsigned char _NF:1;
  1318. unsigned char _OR:1;
  1319. unsigned char _IDLE:1;
  1320. unsigned char _RDRF:1;
  1321. unsigned char _TC:1;
  1322. unsigned char _TDRE:1;
  1323. } SC0SR1_BITS;
  1324. unsigned char SC0SR1_BYTE;
  1325. } SC0SR11 _IO_AT(0xC4);
  1326. /*DEFINE REGISTER*/
  1327. #define SC0SR1 SC0SR11.SC0SR1_BYTE
  1328. /*DEFINE REGISTER BITS*/
  1329. #define PF SC0SR11.SC0SR1_BITS._PF
  1330. #define FE SC0SR11.SC0SR1_BITS._FE
  1331. #define NF SC0SR11.SC0SR1_BITS._NF
  1332. #define OR SC0SR11.SC0SR1_BITS._OR
  1333. #define IDLE SC0SR11.SC0SR1_BITS._IDLE
  1334. #define RDRF SC0SR11.SC0SR1_BITS._RDRF
  1335. #define TC SC0SR11.SC0SR1_BITS._TC
  1336. #define TDRE SC0SR11.SC0SR1_BITS._TDRE
  1337. /*****SCI STATUS REGISTER 2*****/
  1338. __DECL__6812B32_H__ volatile union {
  1339. struct {
  1340. unsigned char _RAF:1;
  1341. unsigned char BIT1:1;
  1342. unsigned char BIT2:1;
  1343. unsigned char BIT3:1;
  1344. unsigned char BIT4:1;
  1345. unsigned char BIT5:1;
  1346. unsigned char BIT6:1;
  1347. unsigned char BIT7:1;
  1348. } SC0SR2_BITS;
  1349. unsigned char SC0SR2_BYTE;
  1350. } SC0SR21 _IO_AT(0xC5);
  1351. /*DEFINE REGISTER*/
  1352. #define SC0SR2 SC0SR21.SC0SR2_BYTE
  1353. /*DEFINE REGISTER BITS*/
  1354. #define RAF SC0SR21.SC0SR2_BITS._RAF
  1355. /*******************************************************************************************/
  1356. /* SCI DATA REGISTERS */
  1357. /*******************************************************************************************/
  1358. /*****SCI DATA REGISTER HIGH*****/
  1359. __DECL__6812B32_H__ volatile union {
  1360. struct {
  1361. unsigned char BIT0:1;
  1362. unsigned char BIT1:1;
  1363. unsigned char BIT2:1;
  1364. unsigned char BIT3:1;
  1365. unsigned char BIT4:1;
  1366. unsigned char BIT5:1;
  1367. unsigned char _T8:1;
  1368. unsigned char _R8:1;
  1369. } SC0DRH_BITS;
  1370. unsigned char SC0DRH_BYTE;
  1371. } SC0DRH1 _IO_AT(0xC6);
  1372. /*DEFINE REGISTER*/
  1373. #define SC0DRH SC0DRH1.SC0DRH_BYTE
  1374. /*DEFINE REGISTER BITS*/
  1375. #define T8 SC0DRH1.SC0DRH_BITS._T8
  1376. #define R8 SC0DRH1.SC0DRH_BITS._R8
  1377. /*****SCI DATA REGISTER LOW*****/
  1378. __DECL__6812B32_H__ volatile union {
  1379. struct {
  1380. unsigned char _R0_T0:1;
  1381. unsigned char _R1_T1:1;
  1382. unsigned char _R2_T2:1;
  1383. unsigned char _R3_T3:1;
  1384. unsigned char _R4_T4:1;
  1385. unsigned char _R5_T5:1;
  1386. unsigned char _R6_T6:1;
  1387. unsigned char _R7_T7:1;
  1388. } SC0DRL_BITS;
  1389. unsigned char SC0DRL_BYTE;
  1390. } SC0DRL1 _IO_AT(0xC7);
  1391. /*DEFINE REGISTER*/
  1392. #define SC0DRL SC0DRL1.SC0DRL_BYTE
  1393. /*DEFINE REGISTER BITS*/
  1394. #define R0_T0 SC0DRL1.SC0DRL_BITS._R0_T0
  1395. #define R1_T1 SC0DRL1.SC0DRL_BITS._R1_T1
  1396. #define R2_T2 SC0DRL1.SC0DRL_BITS._R2_T2
  1397. #define R3_T3 SC0DRL1.SC0DRL_BITS._R3_T3
  1398. #define R4_T4 SC0DRL1.SC0DRL_BITS._R4_T4
  1399. #define R5_T5 SC0DRL1.SC0DRL_BITS._R5_T5
  1400. #define R6_T6 SC0DRL1.SC0DRL_BITS._R6_T6
  1401. #define R7_T7 SC0DRL1.SC0DRL_BITS._R7_T7
  1402. /*******************************************************************************************/
  1403. /* SPI CONTROL REGISTERS */
  1404. /*******************************************************************************************/
  1405. /*****SPI CONTROL REGISTER 1*****/
  1406. __DECL__6812B32_H__ volatile union {
  1407. struct {
  1408. unsigned char _LSBF:1;
  1409. unsigned char _SSOE:1;
  1410. unsigned char _CPHA:1;
  1411. unsigned char _CPOL:1;
  1412. unsigned char _MSTR:1;
  1413. unsigned char _SWOM:1;
  1414. unsigned char _SPE:1;
  1415. unsigned char _SPIE:1;
  1416. } SP0CR1_BITS;
  1417. unsigned char SP0CR1_BYTE;
  1418. } SP0CR11 _IO_AT(0xD0);
  1419. /*DEFINE REGISTER*/
  1420. #define SP0CR1 SP0CR11.SP0CR1_BYTE
  1421. /*DEFINE REGISTER BITS*/
  1422. #define LSBF SP0CR11.SP0CR1_BITS._LSBF
  1423. #define SSOE SP0CR11.SP0CR1_BITS._SSOE
  1424. #define CPHA SP0CR11.SP0CR1_BITS._CPHA
  1425. #define CPOL SP0CR11.SP0CR1_BITS._CPOL
  1426. #define MSTR SP0CR11.SP0CR1_BITS._MSTR
  1427. #define SWOM SP0CR11.SP0CR1_BITS._SWOM
  1428. #define SPE SP0CR11.SP0CR1_BITS._SPE
  1429. #define SPIE SP0CR11.SP0CR1_BITS._SPIE
  1430. /*****SPI CONTROL REGISTER 2*****/
  1431. __DECL__6812B32_H__ volatile union {
  1432. struct {
  1433. unsigned char _SPC0:1;
  1434. unsigned char _SSWAI:1;
  1435. unsigned char BIT2:1;
  1436. unsigned char BIT3:1;
  1437. unsigned char BIT4:1;
  1438. unsigned char BIT5:1;
  1439. unsigned char BIT6:1;
  1440. unsigned char BIT7:1;
  1441. } SP0CR2_BITS;
  1442. unsigned char SP0CR2_BYTE;
  1443. } SP0CR21 _IO_AT(0xD1);
  1444. /*DEFINE REGISTER*/
  1445. #define SP0CR2 SP0CR21.SP0CR2_BYTE
  1446. /*DEFINE REGISTER BITS*/
  1447. #define SPC0 SP0CR21.SP0CR2_BITS._SPC0
  1448. #define SSWAI SP0CR21.SP0CR2_BITS._SSWAI
  1449. /*******************************************************************************************/
  1450. /* SPI BAUD RATE REGISTER */
  1451. /*******************************************************************************************/
  1452. __DECL__6812B32_H__ volatile union {
  1453. struct {
  1454. unsigned char _SPR0:1;
  1455. unsigned char _SPR1:1;
  1456. unsigned char _SPR2:1;
  1457. unsigned char BIT3:1;
  1458. unsigned char BIT4:1;
  1459. unsigned char BIT5:1;
  1460. unsigned char BIT6:1;
  1461. unsigned char BIT7:1;
  1462. } SP0BR_BITS;
  1463. unsigned char SP0BR_BYTE;
  1464. } SP0BR1 _IO_AT(0xD2);
  1465. /*DEFINE REGISTER*/
  1466. #define SP0BR SP0BR1.SP0BR_BYTE
  1467. /*DEFINE REGISTER BITS*/
  1468. #define SPR0 SP0BR1.SP0BR_BITS._SPR0
  1469. #define SPR1 SP0BR1.SP0BR_BITS._SPR1
  1470. #define SPR2 SP0BR1.SP0BR_BITS._SPR2
  1471. /*******************************************************************************************/
  1472. /* SPI STATUS REGISTER */
  1473. /*******************************************************************************************/
  1474. __DECL__6812B32_H__ volatile union {
  1475. struct {
  1476. unsigned char BIT0:1;
  1477. unsigned char BIT1:1;
  1478. unsigned char BIT2:1;
  1479. unsigned char BIT3:1;
  1480. unsigned char _MODF:1;
  1481. unsigned char BIT5:1;
  1482. unsigned char _WCOL:1;
  1483. unsigned char _SPIF:1;
  1484. } SP0SR_BITS;
  1485. unsigned char SP0SR_BYTE;
  1486. } SP0SR1 _IO_AT(0xD3);
  1487. /*DEFINE REGISTER*/
  1488. #define SP0SR SP0SR1.SP0SR_BYTE
  1489. /*DEFINE REGISTER BITS*/
  1490. #define MODF SP0SR1.SP0SR_BITS._MODF
  1491. #define WCOL SP0SR1.SP0SR_BITS._WCOL
  1492. #define SPIF SP0SR1.SP0SR_BITS._SPIF
  1493. /*******************************************************************************************/
  1494. /* SCI DATA REGISTERS */
  1495. /*******************************************************************************************/
  1496. __DECL__6812B32_H__ volatile unsigned char SP0DR _IO_AT(0xd5);
  1497. /*******************************************************************************************/
  1498. /* PORT S */
  1499. /*******************************************************************************************/
  1500. /*****PORT S DEFINITION*****/
  1501. __DECL__6812B32_H__ volatile union {
  1502. struct {
  1503. unsigned char _RXD0:1;
  1504. unsigned char _TXD0:1;
  1505. unsigned char _I_O1:1;
  1506. unsigned char _I_O2:1;
  1507. unsigned char _MISO_SISO:1;
  1508. unsigned char _MOSI_MOMI:1;
  1509. unsigned char _SCK:1;
  1510. unsigned char _SS__CSA:1;
  1511. } PORTS_BITS;
  1512. unsigned char PORTS_BYTE;
  1513. } PORTS1 _IO_AT(0xD6);
  1514. /*DEFINE REGISTER*/
  1515. #define PORTS PORTS1.PORTS_BYTE
  1516. /*DEFINE REGISTER BITS*/
  1517. #define RXD0 PORTS1.PORTS_BITS._RXD0
  1518. #define TXD0 PORTS1.PORTS_BITS._TXD0
  1519. #define I_O1 PORTS1.PORTS_BITS._I_O1
  1520. #define I_O2 PORTS1.PORTS_BITS._I_O2
  1521. #define MISO_SISO PORTS1.PORTS_BITS._MISO_SISO
  1522. #define MOSI_MOMI PORTS1.PORTS_BITS._MOSI_MOMI
  1523. #define SCK PORTS1.PORTS_BITS._SCK
  1524. #define _SS__CS PORTS1.PORTS_BITS._SS__CSA
  1525. /*****DATA DIRECTION REGISTER FOR PORT S*****/
  1526. __DECL__6812B32_H__ volatile unsigned char DDRS _IO_AT(0xd7);
  1527. /*******************************************************************************************/
  1528. /* PULL_UP AND REDUCED DRIVE FOR PORT S */
  1529. /*******************************************************************************************/
  1530. __DECL__6812B32_H__ volatile union {
  1531. struct {
  1532. unsigned char _PUPS0:1;
  1533. unsigned char _PUPS1:1;
  1534. unsigned char _PUPS2:1;
  1535. unsigned char BIT3:1;
  1536. unsigned char _RDPS0:1;
  1537. unsigned char _RDPS1:1;
  1538. unsigned char _RDPS2:1;
  1539. unsigned char BIT7:1;
  1540. } PURDS_BITS;
  1541. unsigned char PURDS_BYTE;
  1542. } PURDS1 _IO_AT(0xDB);
  1543. /*DEFINE REGISTER*/
  1544. #define PURDS PURDS1.PURDS_BYTE
  1545. /*DEFINE REGISTER BITS*/
  1546. #define PUPS0 PURDS1.PURDS_BITS._PUPS0
  1547. #define PUPS1 PURDS1.PURDS_BITS._PUPS1
  1548. #define PUPS2 PURDS1.PURDS_BITS._PUPS2
  1549. #define RDPS0 PURDS1.PURDS_BITS._RDPS0
  1550. #define RDPS1 PURDS1.PURDS_BITS._RDPS1
  1551. #define RDPS2 PURDS1.PURDS_BITS._RDPS2
  1552. /*******************************************************************************************/
  1553. /* EEPROM MODULE CONFIGURATION */
  1554. /*******************************************************************************************/
  1555. __DECL__6812B32_H__ volatile union {
  1556. struct {
  1557. unsigned char _EERC:1;
  1558. unsigned char _PROTLCK:1;
  1559. unsigned char _EESWAI:1;
  1560. unsigned char BIT3:1;
  1561. unsigned char BIT4:1;
  1562. unsigned char BIT5:1;
  1563. unsigned char BIT6:1;
  1564. unsigned char BIT7:1;
  1565. } EEMCR_BITS;
  1566. unsigned char EEMCR_BYTE;
  1567. } EEMCR1 _IO_AT(0xF0);
  1568. /*DEFINE REGISTER*/
  1569. #define EEMCR EEMCR1.EEMCR_BYTE
  1570. /*DEFINE REGISTER BITS*/
  1571. #define EERC EEMCR1.EEMCR_BITS._EERC
  1572. #define PROTLCK EEMCR1.EEMCR_BITS._PROTLCK
  1573. #define EESWAI EEMCR1.EEMCR_BITS._EESWAI
  1574. /*******************************************************************************************/
  1575. /* EEPROM BLOCK PROTECT */
  1576. /*******************************************************************************************/
  1577. __DECL__6812B32_H__ volatile union {
  1578. struct {
  1579. unsigned char _BPROT0:1;
  1580. unsigned char _BPROT1:1;
  1581. unsigned char _BPROT2:1;
  1582. unsigned char _BPROT3:1;
  1583. unsigned char _BPROT4:1;
  1584. unsigned char BIT5:1;
  1585. unsigned char BIT6:1;
  1586. unsigned char BIT7:1;
  1587. } EEPROT_BITS;
  1588. unsigned char EEPROT_BYTE;
  1589. } EEPROT1 _IO_AT(0xF1);
  1590. /*DEFINE REGISTER*/
  1591. #define EEPROT EEPROT1.EEPROT_BYTE
  1592. /*DEFINE REGISTER BITS*/
  1593. #define BPROT0 EEPROT1.EEPROT_BITS._BPROT0
  1594. #define BPROT1 EEPROT1.EEPROT_BITS._BPROT1
  1595. #define BPROT2 EEPROT1.EEPROT_BITS._BPROT2
  1596. #define BPROT3 EEPROT1.EEPROT_BITS._BPROT3
  1597. #define BPROT4 EEPROT1.EEPROT_BITS._BPROT4
  1598. /*******************************************************************************************/
  1599. /* EEPROM TEST */
  1600. /*******************************************************************************************/
  1601. __DECL__6812B32_H__ volatile union {
  1602. struct {
  1603. unsigned char BIT0:1;
  1604. unsigned char _EECPM:1;
  1605. unsigned char BIT2:1;
  1606. unsigned char _EECPRD:1;
  1607. unsigned char _EECPD:1;
  1608. unsigned char _MARG:1;
  1609. unsigned char _EEVEN:1;
  1610. unsigned char _EEODD:1;
  1611. } EETST_BITS;
  1612. unsigned char EETST_BYTE;
  1613. } EETST1 _IO_AT(0xF2);
  1614. /*DEFINE REGISTER*/
  1615. #define EETST EETST1.EETST_BYTE
  1616. /*DEFINE REGISTER BITS*/
  1617. #define EECPM EETST1.EETST_BITS._EECPM
  1618. #define EECPRD EETST1.EETST_BITS._EECPRD
  1619. #define EECPD EETST1.EETST_BITS._EECPD
  1620. #define MARG EETST1.EETST_BITS._MARG
  1621. #define EEVEN EETST1.EETST_BITS._EEVEN
  1622. #define EEODD EETST1.EETST_BITS._EEODD
  1623. /*******************************************************************************************/
  1624. /* EEPROM CONTROL */
  1625. /*******************************************************************************************/
  1626. __DECL__6812B32_H__ volatile union {
  1627. struct {
  1628. unsigned char _EEPGM:1;
  1629. unsigned char _EELAT:1;
  1630. unsigned char _ERASE:1;
  1631. unsigned char _ROW:1;
  1632. unsigned char _BYTE:1;
  1633. unsigned char BIT5:1;
  1634. unsigned char BIT6:1;
  1635. unsigned char _BULKP:1;
  1636. } EEPROG_BITS;
  1637. unsigned char EEPROG_BYTE;
  1638. } EEPROG1 _IO_AT(0xF3);
  1639. /*DEFINE REGISTER*/
  1640. #define EEPROG EEPROG1.EEPROG_BYTE
  1641. /*DEFINE REGISTER BITS*/
  1642. #define EEPGM EEPROG1.EEPROG_BITS._EEPGM
  1643. #define EELAT EEPROG1.EEPROG_BITS._EELAT
  1644. #define ERASE EEPROG1.EEPROG_BITS._ERASE
  1645. #define ROW EEPROG1.EEPROG_BITS._ROW
  1646. #define BYTE EEPROG1.EEPROG_BITS._BYTE
  1647. #define BULKP EEPROG1.EEPROG_BITS._BULKP
  1648. /*******************************************************************************************/
  1649. /* FLASH EEPROM LOCK CONTROL REGISTER */
  1650. /*******************************************************************************************/
  1651. __DECL__6812B32_H__ volatile union {
  1652. struct {
  1653. unsigned char _LOCK:1;
  1654. unsigned char BIT1:1;
  1655. unsigned char BIT2:1;
  1656. unsigned char BIT3:1;
  1657. unsigned char BIT4:1;
  1658. unsigned char BIT5:1;
  1659. unsigned char BIT6:1;
  1660. unsigned char BIT7:1;
  1661. } FEELCK_BITS;
  1662. unsigned char FEELCK_BYTE;
  1663. } FEELCK1 _IO_AT(0xF4);
  1664. /*DEFINE REGISTER*/
  1665. #define FEELCK FEELCK1.FEELCK_BYTE
  1666. /*DEFINE REGISTER BITS*/
  1667. #define LOCK FEELCK1.FEELCK_BITS._LOCK
  1668. /*******************************************************************************************/
  1669. /* FLASH EEPROM MODULE CONFIGURATION REGISTER */
  1670. /*******************************************************************************************/
  1671. __DECL__6812B32_H__ volatile union {
  1672. struct {
  1673. unsigned char _BOOTP:1;
  1674. unsigned char BIT1:1;
  1675. unsigned char BIT2:1;
  1676. unsigned char BIT3:1;
  1677. unsigned char BIT4:1;
  1678. unsigned char BIT5:1;
  1679. unsigned char BIT6:1;
  1680. unsigned char BIT7:1;
  1681. } FEEMCR_BITS;
  1682. unsigned char FEEMCR_BYTE;
  1683. } FEEMCR1 _IO_AT(0xF5);
  1684. /*DEFINE REGISTER*/
  1685. #define FEEMCR FEEMCR1.FEEMCR_BYTE
  1686. /*DEFINE REGISTER BITS*/
  1687. #define BOOTP FEEMCR1.FEEMCR_BITS._BOOTP
  1688. /*******************************************************************************************/
  1689. /* FLASH EEPROM MODULE TEST REGISTER */
  1690. /*******************************************************************************************/
  1691. __DECL__6812B32_H__ volatile union {
  1692. struct {
  1693. unsigned char _MWPR:1;
  1694. unsigned char _STRE:1;
  1695. unsigned char _VTCK:1;
  1696. unsigned char _FDISVFP:1;
  1697. unsigned char _FENLV:1;
  1698. unsigned char _HVT:1;
  1699. unsigned char _GADR:1;
  1700. unsigned char _FSTE:1;
  1701. } FEETST_BITS;
  1702. unsigned char FEETST_BYTE;
  1703. } FEETST1 _IO_AT(0xF6);
  1704. /*DEFINE REGISTER*/
  1705. #define FEETST FEETST1.FEETST_BYTE
  1706. /*DEFINE REGISTER BITS*/
  1707. #define MWPR FEETST1.FEETST_BITS._MWPR
  1708. #define STRE FEETST1.FEETST_BITS._STRE
  1709. #define VTCK FEETST1.FEETST_BITS._VTCK
  1710. #define FDISVFP FEETST1.FEETST_BITS._FDISVFP
  1711. #define FENLV FEETST1.FEETST_BITS._FENLV
  1712. #define HVT FEETST1.FEETST_BITS._HVT
  1713. #define GADR FEETST1.FEETST_BITS._GADR
  1714. #define FSTE FEETST1.FEETST_BITS._FSTE
  1715. /*******************************************************************************************/
  1716. /* FLASH EEPROM CONTROL REGISTER */
  1717. /*******************************************************************************************/
  1718. __DECL__6812B32_H__ volatile union {
  1719. struct {
  1720. unsigned char _ENTPE:1;
  1721. unsigned char _LAT:1;
  1722. unsigned char _ERAS:1;
  1723. unsigned char _SVFP:1;
  1724. unsigned char _FEESWAI:1;
  1725. unsigned char BIT5:1;
  1726. unsigned char BIT6:1;
  1727. unsigned char BIT7:1;
  1728. } FEECTL_BITS;
  1729. unsigned char FEECTL_BYTE;
  1730. } FEECTL1 _IO_AT(0xF7);
  1731. /*DEFINE REGISTER*/
  1732. #define FEECTL FEECTL1.FEECTL_BYTE
  1733. /*DEFINE REGISTER BITS*/
  1734. #define ENTPE FEECTL1.FEECTL_BITS._ENTPE
  1735. #define LAT FEECTL1.FEECTL_BITS._LAT
  1736. #define ERAS FEECTL1.FEECTL_BITS._ERAS
  1737. #define SVFP FEECTL1.FEECTL_BITS._SVFP
  1738. #define FEESWAI FEECTL1.FEECTL_BITS._FEESWAI
  1739. /*******************************************************************************************/
  1740. /* BDLC CONTROL REGISTER 1 */
  1741. /*******************************************************************************************/
  1742. __DECL__6812B32_H__ volatile union {
  1743. struct {
  1744. unsigned char _WCM:1;
  1745. unsigned char _IE:1;
  1746. unsigned char BIT2:1;
  1747. unsigned char BIT3:1;
  1748. unsigned char _R0:1;
  1749. unsigned char _R1:1;
  1750. unsigned char _CLOCKS:1;
  1751. unsigned char _IMSG:1;
  1752. } BCR1_BITS;
  1753. unsigned char BCR1_BYTE;
  1754. } BCR11 _IO_AT(0xF8);
  1755. /*DEFINE REGISTER*/
  1756. #define BCR1 BCR11.BCR1_BYTE
  1757. /*DEFINE REGISTER BITS*/
  1758. #define WCM BCR11.BCR1_BITS._WCM
  1759. #define IE BCR11.BCR1_BITS._IE
  1760. #define R0 BCR11.BCR1_BITS._R0
  1761. #define R1 BCR11.BCR1_BITS._R1
  1762. #define CLOCKS BCR11.BCR1_BITS._CLOCKS
  1763. #define IMSG BCR11.BCR1_BITS._IMSG
  1764. /*******************************************************************************************/
  1765. /* BDLC STATE VECTOR REGISTER */
  1766. /*******************************************************************************************/
  1767. __DECL__6812B32_H__ volatile union {
  1768. struct {
  1769. unsigned char BIT0:1;
  1770. unsigned char BIT1:1;
  1771. unsigned char _I0:1;
  1772. unsigned char _I1:1;
  1773. unsigned char _I2:1;
  1774. unsigned char _I3:1;
  1775. unsigned char BIT6:1;
  1776. unsigned char BIT7:1;
  1777. } BSVR_BITS;
  1778. unsigned char BSVR_BYTE;
  1779. } BSVR1 _IO_AT(0xF9);
  1780. /*DEFINE REGISTER*/
  1781. #define BSVR BSVR1.BSVR_BYTE
  1782. /*DEFINE REGISTER BITS*/
  1783. #define I0 BSVR1.BSVR_BITS._I0
  1784. #define I1 BSVR1.BSVR_BITS._I1
  1785. #define I2 BSVR1.BSVR_BITS._I2
  1786. #define I3 BSVR1.BSVR_BITS._I3
  1787. /*******************************************************************************************/
  1788. /* BDLC CONTROL REGISTER 2 */
  1789. /*******************************************************************************************/
  1790. __DECL__6812B32_H__ volatile union {
  1791. struct {
  1792. unsigned char _TMIFR0:1;
  1793. unsigned char _TMIFR1:1;
  1794. unsigned char _TSIFR:1;
  1795. unsigned char _TEOD:1;
  1796. unsigned char _NBFS:1;
  1797. unsigned char _RX4XE:1;
  1798. unsigned char _DLOOP:1;
  1799. unsigned char _ALOOP:1;
  1800. } BCR2_BITS;
  1801. unsigned char BCR2_BYTE;
  1802. } BCR21 _IO_AT(0xFA);
  1803. /*DEFINE REGISTER*/
  1804. #define BCR2 BCR21.BCR2_BYTE
  1805. /*DEFINE REGISTER BITS*/
  1806. #define TMIFR0 BCR21.BCR2_BITS._TMIFR0
  1807. #define TMIFR1 BCR21.BCR2_BITS._TMIFR1
  1808. #define TSIFR BCR21.BCR2_BITS._TSIFR
  1809. #define TEOD BCR21.BCR2_BITS._TEOD
  1810. #define RX4XE BCR21.BCR2_BITS._RX4XE
  1811. #define DLOOP BCR21.BCR2_BITS._DLOOP
  1812. #define ALOOP BCR21.BCR2_BITS._ALOOP
  1813. /*******************************************************************************************/
  1814. /* BDLC DATA REGISTER */
  1815. /*******************************************************************************************/
  1816. __DECL__6812B32_H__ volatile unsigned char BDR _IO_AT(0xfB);
  1817. /*******************************************************************************************/
  1818. /* BDLC ANALOG ROUNDTRIP DELAY REGISTER */
  1819. /*******************************************************************************************/
  1820. __DECL__6812B32_H__ volatile union {
  1821. struct {
  1822. unsigned char _BO0:1;
  1823. unsigned char _BO1:1;
  1824. unsigned char _BO2:1;
  1825. unsigned char _BO3:1;
  1826. unsigned char BIT4:1;
  1827. unsigned char BIT5:1;
  1828. unsigned char _RXPOL:1;
  1829. unsigned char _ATE:1;
  1830. } BARD_BITS;
  1831. unsigned char BARD_BYTE;
  1832. } BARD1 _IO_AT(0xFC);
  1833. /*DEFINE REGISTER*/
  1834. #define BARD BARD1.BARD_BYTE
  1835. /*DEFINE REGISTER BITS*/
  1836. #define BO0 BARD1.BARD_BITS._BO0
  1837. #define BO1 BARD1.BARD_BITS._BO1
  1838. #define BO2 BARD1.BARD_BITS._BO2
  1839. #define BO3 BARD1.BARD_BITS._BO3
  1840. #define RXPOL BARD1.BARD_BITS._RXPOL
  1841. #define ATE BARD1.BARD_BITS._ATE
  1842. /*******************************************************************************************/
  1843. /* PORT DLC CONTROL REGISTER */
  1844. /*******************************************************************************************/
  1845. __DECL__6812B32_H__ volatile union {
  1846. struct {
  1847. unsigned char _RDPDLC:1;
  1848. unsigned char _PUPDLC:1;
  1849. unsigned char _BDLGEN:1;
  1850. unsigned char BIT3:1;
  1851. unsigned char BIT4:1;
  1852. unsigned char BIT5:1;
  1853. unsigned char BIT6:1;
  1854. unsigned char BIT7:1;
  1855. } DLCSCR_BITS;
  1856. unsigned char DLCSCR_BYTE;
  1857. } DLCSCR1 _IO_AT(0xFD);
  1858. /*DEFINE REGISTER*/
  1859. #define DLCSCR DLCSCR1.DLCSCR_BYTE
  1860. /*DEFINE REGISTER BITS*/
  1861. #define RDPDLC DLCSCR1.DLCSCR_BITS._RDPDLC
  1862. #define PUPDLC DLCSCR1.DLCSCR_BITS._PUPDLC
  1863. #define BDLGEN DLCSCR1.DLCSCR_BITS._BDLGEN
  1864. /*******************************************************************************************/
  1865. /* PORT DLC */
  1866. /*******************************************************************************************/
  1867. /*****PORT DLC DEFINITION*****/
  1868. __DECL__6812B32_H__ volatile union {
  1869. struct {
  1870. unsigned char _DLCRX:1;
  1871. unsigned char _DLCTX:1;
  1872. unsigned char BIT2:1;
  1873. unsigned char BIT3:1;
  1874. unsigned char BIT4:1;
  1875. unsigned char BIT5:1;
  1876. unsigned char BIT6:1;
  1877. unsigned char BIT7:1;
  1878. } PORTDLC_BITS;
  1879. unsigned char PORTDLC_BYTE;
  1880. } PORTDLC1 _IO_AT(0xFE);
  1881. /*DEFINE REGISTER*/
  1882. #define PORTDLC PORTDLC1.PORTDLC_BYTE
  1883. /*DEFINE REGISTER BITS*/
  1884. #define DLCRX PORTDLC1.PORTDLC_BITS._DLCRX
  1885. #define DLCTX PORTDLC1.PORTDLC_BITS._DLCTX
  1886. /*****DATA DIRECTION REGISTER FOR PORT DLC*****/
  1887. __DECL__6812B32_H__ volatile unsigned char DDRDLC _IO_AT(0xff); /* port DLC direction register */
  1888. #endif /* __6812B32_H__ */