RTEMS CPU Kit with SuperCore
4.11.3
Main Page
Related Pages
Modules
+
Data Structures
Data Structures
+
Data Fields
+
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
+
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
+
Files
File List
+
Globals
+
All
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
+
Functions
_
a
b
c
d
e
f
g
i
j
l
m
n
o
p
q
r
s
t
u
v
w
+
Variables
_
b
c
d
i
r
+
Typedefs
a
b
c
d
f
h
i
m
o
p
q
r
s
t
u
w
x
+
Enumerations
b
c
d
e
h
i
m
o
p
r
s
t
w
+
Enumerator
c
i
m
p
r
s
t
w
+
Macros
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
w
mnt
data0
chrisj
rtems
releases
rtems-release.git
4.11.3
ws-rtems
rtems-4.11.3
cpukit
score
cpu
avr
avr
iotn861a.h
Go to the documentation of this file.
1
9
/*
10
* Copyright (c) 2009 Atmel Corporation
11
* All rights reserved.
12
*
13
* Redistribution and use in source and binary forms, with or without
14
* modification, are permitted provided that the following conditions are met:
15
*
16
* * Redistributions of source code must retain the above copyright
17
* notice, this list of conditions and the following disclaimer.
18
*
19
* * Redistributions in binary form must reproduce the above copyright
20
* notice, this list of conditions and the following disclaimer in
21
* the documentation and/or other materials provided with the
22
* distribution.
23
*
24
* * Neither the name of the copyright holders nor the names of
25
* contributors may be used to endorse or promote products derived
26
* from this software without specific prior written permission.
27
*
28
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
29
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
30
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
31
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
32
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
33
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
34
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
35
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
36
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
37
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
38
* POSSIBILITY OF SUCH DAMAGE.
39
*/
40
41
#ifndef _AVR_IO_H_
42
# error "Include <avr/io.h> instead of this file."
43
#endif
44
45
#ifndef _AVR_IOXXX_H_
46
# define _AVR_IOXXX_H_ "iotn861a.h"
47
#else
48
# error "Attempt to include more than one <avr/ioXXX.h> file."
49
#endif
50
51
52
#ifndef _AVR_ATtiny861A_H_
53
#define _AVR_ATtiny861A_H_ 1
54
62
/* Registers and associated bit numbers. */
63
64
#define TCCR1E _SFR_IO8(0x00)
65
#define OC1OE0 0
66
#define OC1OE1 1
67
#define OC1OE2 2
68
#define OC1OE3 3
69
#define OC1OE4 4
70
#define OC1OE5 5
71
72
#define DIDR0 _SFR_IO8(0x01)
73
#define ADC0D 0
74
#define ADC1D 1
75
#define ADC2D 2
76
#define AREFD 3
77
#define ADC3D 4
78
#define ADC4D 5
79
#define ADC5D 6
80
#define ADC6D 7
81
82
#define DIDR1 _SFR_IO8(0x02)
83
#define ADC7D 4
84
#define ADC8D 5
85
#define ADC9D 6
86
#define ADC10D 7
87
88
#define ADCSRB _SFR_IO8(0x03)
89
#define ADTS0 0
90
#define ADTS1 1
91
#define ADTS2 2
92
#define MUX5 3
93
#define REFS2 4
94
#define IPR 5
95
#define GSEL 6
96
#define BIN 7
97
98
#ifndef __ASSEMBLER__
99
#define ADC _SFR_IO16(0x04)
100
#endif
101
#define ADCW _SFR_IO16(0x04)
102
103
#define ADCL _SFR_IO8(0x04)
104
#define ADCL0 0
105
#define ADCL1 1
106
#define ADCL2 2
107
#define ADCL3 3
108
#define ADCL4 4
109
#define ADCL5 5
110
#define ADCL6 6
111
#define ADCL7 7
112
113
#define ADCH _SFR_IO8(0x05)
114
#define ADCH0 0
115
#define ADCH1 1
116
#define ADCH2 2
117
#define ADCH3 3
118
#define ADCH4 4
119
#define ADCH5 5
120
#define ADCH6 6
121
#define ADCH7 7
122
123
#define ADCSRA _SFR_IO8(0x06)
124
#define ADPS0 0
125
#define ADPS1 1
126
#define ADPS2 2
127
#define ADIE 3
128
#define ADIF 4
129
#define ADATE 5
130
#define ADSC 6
131
#define ADEN 7
132
133
#define ADMUX _SFR_IO8(0x07)
134
#define MUX0 0
135
#define MUX1 1
136
#define MUX2 2
137
#define MUX3 3
138
#define MUX4 4
139
#define ADLAR 5
140
#define REFS0 6
141
#define REFS1 7
142
143
#define ACSRA _SFR_IO8(0x08)
144
#define ACIS0 0
145
#define ACIS1 1
146
#define ACME 2
147
#define ACIE 3
148
#define ACI 4
149
#define ACO 5
150
#define ACBG 6
151
#define ACD 7
152
153
#define ACSRB _SFR_IO8(0x09)
154
#define ACM0 0
155
#define ACM1 1
156
#define ACM2 2
157
#define HLEV 6
158
#define HSEL 7
159
160
#define GPIOR0 _SFR_IO8(0x0A)
161
#define GPIOR00 0
162
#define GPIOR01 1
163
#define GPIOR02 2
164
#define GPIOR03 3
165
#define GPIOR04 4
166
#define GPIOR05 5
167
#define GPIOR06 6
168
#define GPIOR07 7
169
170
#define GPIOR1 _SFR_IO8(0x0B)
171
#define GPIOR10 0
172
#define GPIOR11 1
173
#define GPIOR12 2
174
#define GPIOR13 3
175
#define GPIOR14 4
176
#define GPIOR15 5
177
#define GPIOR16 6
178
#define GPIOR17 7
179
180
#define GPIOR2 _SFR_IO8(0x0C)
181
#define GPIOR20 0
182
#define GPIOR21 1
183
#define GPIOR22 2
184
#define GPIOR23 3
185
#define GPIOR24 4
186
#define GPIOR25 5
187
#define GPIOR26 6
188
#define GPIOR27 7
189
190
#define USICR _SFR_IO8(0x0D)
191
#define USITC 0
192
#define USICLK 1
193
#define USICS0 2
194
#define USICS1 3
195
#define USIWM0 4
196
#define USIWM1 5
197
#define USIOIE 6
198
#define USISIE 7
199
200
#define USISR _SFR_IO8(0x0E)
201
#define USICNT0 0
202
#define USICNT1 1
203
#define USICNT2 2
204
#define USICNT3 3
205
#define USIDC 4
206
#define USIPF 5
207
#define USIOIF 6
208
#define USISIF 7
209
210
#define USIDR _SFR_IO8(0x0F)
211
#define USIDR0 0
212
#define USIDR1 1
213
#define USIDR2 2
214
#define USIDR3 3
215
#define USIDR4 4
216
#define USIDR5 5
217
#define USIDR6 6
218
#define USIDR7 7
219
220
#define USIBR _SFR_IO8(0x10)
221
#define USIBR0 0
222
#define USIBR1 1
223
#define USIBR2 2
224
#define USIBR3 3
225
#define USIBR4 4
226
#define USIBR5 5
227
#define USIBR6 6
228
#define USIBR7 7
229
230
#define USIPP _SFR_IO8(0x11)
231
#define USIPOS 0
232
233
#define OCR0B _SFR_IO8(0x12)
234
#define OCR0B_0 0
235
#define OCR0B_1 1
236
#define OCR0B_2 2
237
#define OCR0B_3 3
238
#define OCR0B_4 4
239
#define OCR0B_5 5
240
#define OCR0B_6 6
241
#define OCR0B_7 7
242
243
#define OCR0A _SFR_IO8(0x13)
244
#define OCR0A_0 0
245
#define OCR0A_1 1
246
#define OCR0A_2 2
247
#define OCR0A_3 3
248
#define OCR0A_4 4
249
#define OCR0A_5 5
250
#define OCR0A_6 6
251
#define OCR0A_7 7
252
253
#define TCNT0H _SFR_IO8(0x14)
254
#define TCNT0H_0 0
255
#define TCNT0H_1 1
256
#define TCNT0H_2 2
257
#define TCNT0H_3 3
258
#define TCNT0H_4 4
259
#define TCNT0H_5 5
260
#define TCNT0H_6 6
261
#define TCNT0H_7 7
262
263
#define TCCR0A _SFR_IO8(0x15)
264
#define WGM00 0
265
#define ACIC0 3
266
#define ICES0 4
267
#define ICNC0 5
268
#define ICEN0 6
269
#define TCW0 7
270
271
#define PINB _SFR_IO8(0x16)
272
#define PINB0 0
273
#define PINB1 1
274
#define PINB2 2
275
#define PINB3 3
276
#define PINB4 4
277
#define PINB5 5
278
#define PINB6 6
279
#define PINB7 7
280
281
#define DDRB _SFR_IO8(0x17)
282
#define DDB0 0
283
#define DDB1 1
284
#define DDB2 2
285
#define DDB3 3
286
#define DDB4 4
287
#define DDB5 5
288
#define DDB6 6
289
#define DDB7 7
290
291
#define PORTB _SFR_IO8(0x18)
292
#define PORTB0 0
293
#define PORTB1 1
294
#define PORTB2 2
295
#define PORTB3 3
296
#define PORTB4 4
297
#define PORTB5 5
298
#define PORTB6 6
299
#define PORTB7 7
300
301
#define PINA _SFR_IO8(0x19)
302
#define PINA0 0
303
#define PINA1 1
304
#define PINA2 2
305
#define PINA3 3
306
#define PINA4 4
307
#define PINA5 5
308
#define PINA6 6
309
#define PINA7 7
310
311
#define DDRA _SFR_IO8(0x1A)
312
#define DDA0 0
313
#define DDA1 1
314
#define DDA2 2
315
#define DDA3 3
316
#define DDA4 4
317
#define DDA5 5
318
#define DDA6 6
319
#define DDA7 7
320
321
#define PORTA _SFR_IO8(0x1B)
322
#define PORTA0 0
323
#define PORTA1 1
324
#define PORTA2 2
325
#define PORTA3 3
326
#define PORTA4 4
327
#define PORTA5 5
328
#define PORTA6 6
329
#define PORTA7 7
330
331
#define EECR _SFR_IO8(0x1C)
332
#define EERE 0
333
#define EEPE 1
334
#define EEMPE 2
335
#define EERIE 3
336
#define EEPM0 4
337
#define EEPM1 5
338
339
#define EEDR _SFR_IO8(0x1D)
340
#define EEDR0 0
341
#define EEDR1 1
342
#define EEDR2 2
343
#define EEDR3 3
344
#define EEDR4 4
345
#define EEDR5 5
346
#define EEDR6 6
347
#define EEDR7 7
348
349
#define EEAR _SFR_IO16(0x1E)
350
351
#define EEARL _SFR_IO8(0x1E)
352
#define EEAR0 0
353
#define EEAR1 1
354
#define EEAR2 2
355
#define EEAR3 3
356
#define EEAR4 4
357
#define EEAR5 5
358
#define EEAR6 6
359
#define EEAR7 7
360
361
#define EEARH _SFR_IO8(0x1F)
362
#define EEAR8 0
363
364
#define DWDR _SFR_IO8(0x20)
365
#define DWDR0 0
366
#define DWDR1 1
367
#define DWDR2 2
368
#define DWDR3 3
369
#define DWDR4 4
370
#define DWDR5 5
371
#define DWDR6 6
372
#define DWDR7 7
373
374
#define WDTCR _SFR_IO8(0x21)
375
#define WDP0 0
376
#define WDP1 1
377
#define WDP2 2
378
#define WDE 3
379
#define WDCE 4
380
#define WDP3 5
381
#define WDIE 6
382
#define WDIF 7
383
384
#define PCMSK1 _SFR_IO8(0x22)
385
#define PCINT8 0
386
#define PCINT9 1
387
#define PCINT10 2
388
#define PCINT11 3
389
#define PCINT12 4
390
#define PCINT13 5
391
#define PCINT14 6
392
#define PCINT15 7
393
394
#define PCMSK0 _SFR_IO8(0x23)
395
#define PCINT0 0
396
#define PCINT1 1
397
#define PCINT2 2
398
#define PCINT3 3
399
#define PCINT4 4
400
#define PCINT5 5
401
#define PCINT6 6
402
#define PCINT7 7
403
404
#define DT1 _SFR_IO8(0x24)
405
#define DT1L0 0
406
#define DT1L1 1
407
#define DT1L2 2
408
#define DT1L3 3
409
#define DT1H0 4
410
#define DT1H1 5
411
#define DT1H2 6
412
#define DT1H3 7
413
414
#define TC1H _SFR_IO8(0x25)
415
#define TC18 0
416
#define TC19 1
417
418
#define TCCR1D _SFR_IO8(0x26)
419
#define WGM10 0
420
#define WGM11 1
421
#define FPF1 2
422
#define FPAC1 3
423
#define FPES1 4
424
#define FPNC1 5
425
#define FPEN1 6
426
#define FPIE1 7
427
428
#define TCCR1C _SFR_IO8(0x27)
429
#define PWM1D 0
430
#define FOC1D 1
431
#define COM1D0 2
432
#define COM1D1 3
433
#define COM1B0S 4
434
#define COM1B1S 5
435
#define COM1A0S 6
436
#define COM1A1S 7
437
438
#define CLKPR _SFR_IO8(0x28)
439
#define CLKPS0 0
440
#define CLKPS1 1
441
#define CLKPS2 2
442
#define CLKPS3 3
443
#define CLKPCE 7
444
445
#define PLLCSR _SFR_IO8(0x29)
446
#define PLOCK 0
447
#define PLLE 1
448
#define PCKE 2
449
#define LSM 7
450
451
#define OCR1D _SFR_IO8(0x2A)
452
#define OCR1D0 0
453
#define OCR1D1 1
454
#define OCR1D2 2
455
#define OCR1D3 3
456
#define OCR1D4 4
457
#define OCR1D5 5
458
#define OCR1D6 6
459
#define OCR1D7 7
460
461
#define OCR1C _SFR_IO8(0x2B)
462
#define OCR1C0 0
463
#define OCR1C1 1
464
#define OCR1C2 2
465
#define OCR1C3 3
466
#define OCR1C4 4
467
#define OCR1C5 5
468
#define OCR1C6 6
469
#define OCR1C7 7
470
471
#define OCR1B _SFR_IO8(0x2C)
472
#define OCR1B0 0
473
#define OCR1B1 1
474
#define OCR1B2 2
475
#define OCR1B3 3
476
#define OCR1B4 4
477
#define OCR1B5 5
478
#define OCR1B6 6
479
#define OCR1B7 7
480
481
#define OCR1A _SFR_IO8(0x2D)
482
#define OCR1A0 0
483
#define OCR1A1 1
484
#define OCR1A2 2
485
#define OCR1A3 3
486
#define OCR1A4 4
487
#define OCR1A5 5
488
#define OCR1A6 6
489
#define OCR1A7 7
490
491
#define TCNT1 _SFR_IO8(0x2E)
492
#define TC1H_0 0
493
#define TC1H_1 1
494
#define TC1H_2 2
495
#define TC1H_3 3
496
#define TC1H_4 4
497
#define TC1H_5 5
498
#define TC1H_6 6
499
#define TC1H_7 7
500
501
#define TCCR1B _SFR_IO8(0x2F)
502
#define CS10 0
503
#define CS11 1
504
#define CS12 2
505
#define CS13 3
506
#define DTPS10 4
507
#define DTPS11 5
508
#define PSR1 6
509
510
#define TCCR1A _SFR_IO8(0x30)
511
#define PWM1B 0
512
#define PWM1A 1
513
#define FOC1B 2
514
#define FOC1A 3
515
#define COM1B0 4
516
#define COM1B1 5
517
#define COM1A0 6
518
#define COM1A1 7
519
520
#define OSCCAL _SFR_IO8(0x31)
521
#define CAL0 0
522
#define CAL1 1
523
#define CAL2 2
524
#define CAL3 3
525
#define CAL4 4
526
#define CAL5 5
527
#define CAL6 6
528
#define CAL7 7
529
530
#define TCNT0L _SFR_IO8(0x32)
531
#define TCNT0L_0 0
532
#define TCNT0L_1 1
533
#define TCNT0L_2 2
534
#define TCNT0L_3 3
535
#define TCNT0L_4 4
536
#define TCNT0L_5 5
537
#define TCNT0L_6 6
538
#define TCNT0L_7 7
539
540
#define TCCR0B _SFR_IO8(0x33)
541
#define CS00 0
542
#define CS01 1
543
#define CS02 2
544
#define PSR0 3
545
#define TSM 4
546
547
#define MCUSR _SFR_IO8(0x34)
548
#define PORF 0
549
#define EXTRF 1
550
#define BORF 2
551
#define WDRF 3
552
553
#define MCUCR _SFR_IO8(0x35)
554
#define ISC00 0
555
#define ISC01 1
556
#define BODSE 2
557
#define SM0 3
558
#define SM1 4
559
#define SE 5
560
#define PUD 6
561
#define BODS 7
562
563
#define PRR _SFR_IO8(0x36)
564
#define PRADC 0
565
#define PRUSI 1
566
#define PRTIM0 2
567
#define PRTIM1 3
568
569
#define SPMCSR _SFR_IO8(0x37)
570
#define SPMEN 0
571
#define PGERS 1
572
#define PGWRT 2
573
#define RFLB 3
574
#define CTPB 4
575
576
#define TIFR _SFR_IO8(0x38)
577
#define ICF0 0
578
#define TOV0 1
579
#define TOV1 2
580
#define OCF0B 3
581
#define OCF0A 4
582
#define OCF1B 5
583
#define OCF1A 6
584
#define OCF1D 7
585
586
#define TIMSK _SFR_IO8(0x39)
587
#define TICIE0 0
588
#define TOIE0 1
589
#define TOIE1 2
590
#define OCIE0B 3
591
#define OCIE0A 4
592
#define OCIE1B 5
593
#define OCIE1A 6
594
#define OCIE1D 7
595
596
#define GIFR _SFR_IO8(0x3A)
597
#define PCIF 5
598
#define INTF0 6
599
#define INTF1 7
600
601
#define GIMSK _SFR_IO8(0x3B)
602
#define PCIE0 4
603
#define PCIE1 5
604
#define INT0 6
605
#define INT1 7
606
607
608
/* Interrupt vectors */
609
/* Vector 0 is the reset vector */
610
#define INT0_vect_num 1
611
#define INT0_vect _VECTOR(1)
/* External Interrupt 0 */
612
#define PCINT_vect_num 2
613
#define PCINT_vect _VECTOR(2)
/* Pin Change Interrupt */
614
#define TIMER1_COMPA_vect_num 3
615
#define TIMER1_COMPA_vect _VECTOR(3)
/* Timer/Counter1 Compare Match 1A */
616
#define TIMER1_COMPB_vect_num 4
617
#define TIMER1_COMPB_vect _VECTOR(4)
/* Timer/Counter1 Compare Match 1B */
618
#define TIMER1_OVF_vect_num 5
619
#define TIMER1_OVF_vect _VECTOR(5)
/* Timer/Counter1 Overflow */
620
#define TIMER0_OVF_vect_num 6
621
#define TIMER0_OVF_vect _VECTOR(6)
/* Timer/Counter0 Overflow */
622
#define USI_START_vect_num 7
623
#define USI_START_vect _VECTOR(7)
/* USI Start */
624
#define USI_OVF_vect_num 8
625
#define USI_OVF_vect _VECTOR(8)
/* USI Overflow */
626
#define EE_RDY_vect_num 9
627
#define EE_RDY_vect _VECTOR(9)
/* EEPROM Ready */
628
#define ANA_COMP_vect_num 10
629
#define ANA_COMP_vect _VECTOR(10)
/* Analog Comparator */
630
#define ADC_vect_num 11
631
#define ADC_vect _VECTOR(11)
/* ADC Conversion Complete */
632
#define WDT_vect_num 12
633
#define WDT_vect _VECTOR(12)
/* Watchdog Time-Out */
634
#define INT1_vect_num 13
635
#define INT1_vect _VECTOR(13)
/* External Interrupt 1 */
636
#define TIMER0_COMPA_vect_num 14
637
#define TIMER0_COMPA_vect _VECTOR(14)
/* Timer/Counter0 Compare Match A */
638
#define TIMER0_COMPB_vect_num 15
639
#define TIMER0_COMPB_vect _VECTOR(15)
/* Timer/Counter0 Compare Match B */
640
#define TIMER0_CAPT_vect_num 16
641
#define TIMER0_CAPT_vect _VECTOR(16)
/* ADC Conversion Complete */
642
#define TIMER1_COMPD_vect_num 17
643
#define TIMER1_COMPD_vect _VECTOR(17)
/* Timer/Counter1 Compare Match D */
644
#define FAULT_PROTECTION_vect_num 18
645
#define FAULT_PROTECTION_vect _VECTOR(18)
/* Timer/Counter1 Fault Protection */
646
647
#define _VECTOR_SIZE 2
/* Size of individual vector. */
648
#define _VECTORS_SIZE (19 * _VECTOR_SIZE)
649
650
651
/* Constants */
652
#define SPM_PAGESIZE (64)
653
#define RAMSTART (0x60)
654
#define RAMSIZE (512)
655
#define RAMEND (RAMSTART + RAMSIZE - 1)
656
#define XRAMSTART (NA)
657
#define XRAMSIZE (0)
658
#define XRAMEND (RAMEND)
659
#define E2END (0x1FF)
660
#define E2PAGESIZE (4)
661
#define FLASHEND (0x1FFF)
662
663
664
/* Fuses */
665
#define FUSE_MEMORY_SIZE 3
666
667
/* Low Fuse Byte */
668
#define FUSE_CKSEL0 (unsigned char)~_BV(0)
/* Select Clock source */
669
#define FUSE_CKSEL1 (unsigned char)~_BV(1)
/* Select Clock source */
670
#define FUSE_CKSEL2 (unsigned char)~_BV(2)
/* Select Clock source */
671
#define FUSE_CKSEL3 (unsigned char)~_BV(3)
/* Select Clock source */
672
#define FUSE_SUT0 (unsigned char)~_BV(4)
/* Select start-up time */
673
#define FUSE_SUT1 (unsigned char)~_BV(5)
/* Select start-up time */
674
#define FUSE_CKOUT (unsigned char)~_BV(6)
/* Clock Output Enable */
675
#define FUSE_CKDIV8 (unsigned char)~_BV(7)
/* Divide clock by 8 */
676
#define LFUSE_DEFAULT (FUSE_CKSEL0 & FUSE_CKSEL2 & FUSE_CKSEL3 & FUSE_SUT0 & FUSE_CKDIV8)
677
678
/* High Fuse Byte */
679
#define FUSE_BODLEVEL0 (unsigned char)~_BV(0)
/* Brown-out Detector trigger level */
680
#define FUSE_BODLEVEL1 (unsigned char)~_BV(1)
/* Brown-out Detector trigger level */
681
#define FUSE_BODLEVEL2 (unsigned char)~_BV(2)
/* Brown-out Detector trigger level */
682
#define FUSE_EESAVE (unsigned char)~_BV(3)
/* EEPROM memory is preserved through the Chip Erase */
683
#define FUSE_WDTON (unsigned char)~_BV(4)
/* Watchdog Timer always on */
684
#define FUSE_SPIEN (unsigned char)~_BV(5)
/* Enable Serial Program and Data Downloading */
685
#define FUSE_DWEN (unsigned char)~_BV(6)
/* DebugWIRE Enable */
686
#define FUSE_RSTDISBL (unsigned char)~_BV(7)
/* External Reset disable */
687
#define HFUSE_DEFAULT (FUSE_SPIEN)
688
689
/* Extended Fuse Byte */
690
#define FUSE_SELFPRGEN (unsigned char)~_BV(0)
/* Self-Programming Enable */
691
#define EFUSE_DEFAULT (0xFF)
692
693
694
/* Lock Bits */
695
#define __LOCK_BITS_EXIST
696
697
698
/* Signature */
699
#define SIGNATURE_0 0x1E
700
#define SIGNATURE_1 0x93
701
#define SIGNATURE_2 0x0D
702
703
704
/* Device Pin Definitions */
705
#define DI_B_DDR DDRMOSI
706
#define DI_B_PORT PORTMOSI
707
#define DI_B_PIN PINMOSI
708
#define DI_B_BIT MOSI
709
710
#define SDA_B_DDR DDRMOSI
711
#define SDA_B_PORT PORTMOSI
712
#define SDA_B_PIN PINMOSI
713
#define SDA_B_BIT MOSI
714
715
#define _OC1A_DDR DDRMOSI
716
#define _OC1A_PORT PORTMOSI
717
#define _OC1A_PIN PINMOSI
718
#define _OC1A_BIT MOSI
719
720
#define PCINT8_DDR DDRMOSI
721
#define PCINT8_PORT PORTMOSI
722
#define PCINT8_PIN PINMOSI
723
#define PCINT8_BIT MOSI
724
725
#define PB0_DDR DDRMOSI
726
#define PB0_PORT PORTMOSI
727
#define PB0_PIN PINMOSI
728
#define PB0_BIT MOSI
729
730
#define DO_B_DDR DDRMISO
731
#define DO_B_PORT PORTMISO
732
#define DO_B_PIN PINMISO
733
#define DO_B_BIT MISO
734
735
#define OC1A_DDR DDRMISO
736
#define OC1A_PORT PORTMISO
737
#define OC1A_PIN PINMISO
738
#define OC1A_BIT MISO
739
740
#define PCINT9_DDR DDRMISO
741
#define PCINT9_PORT PORTMISO
742
#define PCINT9_PIN PINMISO
743
#define PCINT9_BIT MISO
744
745
#define PB1_DDR DDRMISO
746
#define PB1_PORT PORTMISO
747
#define PB1_PIN PINMISO
748
#define PB1_BIT MISO
749
750
#define USCK_B_DDR DDRSCK
751
#define USCK_B_PORT PORTSCK
752
#define USCK_B_PIN PINSCK
753
#define USCK_B_BIT SCK
754
755
#define SCL_B_DDR DDRSCK
756
#define SCL_B_PORT PORTSCK
757
#define SCL_B_PIN PINSCK
758
#define SCL_B_BIT SCK
759
760
#define OC1B_DDR DDRSCK
761
#define OC1B_PORT PORTSCK
762
#define OC1B_PIN PINSCK
763
#define OC1B_BIT SCK
764
765
#define PCINT10_DDR DDRSCK
766
#define PCINT10_PORT PORTSCK
767
#define PCINT10_PIN PINSCK
768
#define PCINT10_BIT SCK
769
770
#define PB2_DDR DDRSCK
771
#define PB2_PORT PORTSCK
772
#define PB2_PIN PINSCK
773
#define PB2_BIT SCK
774
775
#define PCINT11_DDR DDROC1B
776
#define PCINT11_PORT PORTOC1B
777
#define PCINT11_PIN PINOC1B
778
#define PCINT11_BIT OC1B
779
780
#define PB3_DDR DDROC1B
781
#define PB3_PORT PORTOC1B
782
#define PB3_PIN PINOC1B
783
#define PB3_BIT OC1B
784
785
#define PCINT12_DDR DDRADC
786
#define PCINT12_PORT PORTADC
787
#define PCINT12_PIN PINADC
788
#define PCINT12_BIT ADC7
789
790
#define _OC1D_DDR DDRADC
791
#define _OC1D_PORT PORTADC
792
#define _OC1D_PIN PINADC
793
#define _OC1D_BIT ADC7
794
795
#define CLKI_DDR DDRADC
796
#define CLKI_PORT PORTADC
797
#define CLKI_PIN PINADC
798
#define CLKI_BIT ADC7
799
800
#define PB4_DDR DDRADC
801
#define PB4_PORT PORTADC
802
#define PB4_PIN PINADC
803
#define PB4_BIT ADC7
804
805
#define PCINT13_DDR DDRADC
806
#define PCINT13_PORT PORTADC
807
#define PCINT13_PIN PINADC
808
#define PCINT13_BIT ADC8
809
810
#define OC1D_DDR DDRADC
811
#define OC1D_PORT PORTADC
812
#define OC1D_PIN PINADC
813
#define OC1D_BIT ADC8
814
815
#define CKLO_DDR DDRADC
816
#define CKLO_PORT PORTADC
817
#define CKLO_PIN PINADC
818
#define CKLO_BIT ADC8
819
820
#define PB5_DDR DDRADC
821
#define PB5_PORT PORTADC
822
#define PB5_PIN PINADC
823
#define PB5_BIT ADC8
824
825
#define INT0_DDR DDRADC
826
#define INT0_PORT PORTADC
827
#define INT0_PIN PINADC
828
#define INT0_BIT ADC9
829
830
#define T0_DDR DDRADC
831
#define T0_PORT PORTADC
832
#define T0_PIN PINADC
833
#define T0_BIT ADC9
834
835
#define PCINT14_DDR DDRADC
836
#define PCINT14_PORT PORTADC
837
#define PCINT14_PIN PINADC
838
#define PCINT14_BIT ADC9
839
840
#define PB6_DDR DDRADC
841
#define PB6_PORT PORTADC
842
#define PB6_PIN PINADC
843
#define PB6_BIT ADC9
844
845
#define PCINT15_DDR DDRADC1
846
#define PCINT15_PORT PORTADC1
847
#define PCINT15_PIN PINADC1
848
#define PCINT15_BIT ADC10
849
850
#define PB7_DDR DDRADC1
851
#define PB7_PORT PORTADC1
852
#define PB7_PIN PINADC1
853
#define PB7_BIT ADC10
854
855
#define AIN1_DDR DDRADC
856
#define AIN1_PORT PORTADC
857
#define AIN1_PIN PINADC
858
#define AIN1_BIT ADC6
859
860
#define PCINT7_DDR DDRADC
861
#define PCINT7_PORT PORTADC
862
#define PCINT7_PIN PINADC
863
#define PCINT7_BIT ADC6
864
865
#define PA7_DDR DDRADC
866
#define PA7_PORT PORTADC
867
#define PA7_PIN PINADC
868
#define PA7_BIT ADC6
869
870
#define AIN0_DDR DDRADC
871
#define AIN0_PORT PORTADC
872
#define AIN0_PIN PINADC
873
#define AIN0_BIT ADC5
874
875
#define PCINT6_DDR DDRADC
876
#define PCINT6_PORT PORTADC
877
#define PCINT6_PIN PINADC
878
#define PCINT6_BIT ADC5
879
880
#define PA6_DDR DDRADC
881
#define PA6_PORT PORTADC
882
#define PA6_PIN PINADC
883
#define PA6_BIT ADC5
884
885
#define AIN2_DDR DDRADC
886
#define AIN2_PORT PORTADC
887
#define AIN2_PIN PINADC
888
#define AIN2_BIT ADC4
889
890
#define PCINT5_DDR DDRADC
891
#define PCINT5_PORT PORTADC
892
#define PCINT5_PIN PINADC
893
#define PCINT5_BIT ADC4
894
895
#define PA5_DDR DDRADC
896
#define PA5_PORT PORTADC
897
#define PA5_PIN PINADC
898
#define PA5_BIT ADC4
899
900
#define ICP0_DDR DDRADC
901
#define ICP0_PORT PORTADC
902
#define ICP0_PIN PINADC
903
#define ICP0_BIT ADC3
904
905
#define PCINT4_DDR DDRADC
906
#define PCINT4_PORT PORTADC
907
#define PCINT4_PIN PINADC
908
#define PCINT4_BIT ADC3
909
910
#define PA4_DDR DDRADC
911
#define PA4_PORT PORTADC
912
#define PA4_PIN PINADC
913
#define PA4_BIT ADC3
914
915
#define PCINT3_DDR DDRAREF
916
#define PCINT3_PORT PORTAREF
917
#define PCINT3_PIN PINAREF
918
#define PCINT3_BIT AREF
919
920
#define PA3_DDR DDRAREF
921
#define PA3_PORT PORTAREF
922
#define PA3_PIN PINAREF
923
#define PA3_BIT AREF
924
925
#define INT1_DDR DDRADC
926
#define INT1_PORT PORTADC
927
#define INT1_PIN PINADC
928
#define INT1_BIT ADC2
929
930
#define USCK_A_DDR DDRADC
931
#define USCK_A_PORT PORTADC
932
#define USCK_A_PIN PINADC
933
#define USCK_A_BIT ADC2
934
935
#define SCL_A_DDR DDRADC
936
#define SCL_A_PORT PORTADC
937
#define SCL_A_PIN PINADC
938
#define SCL_A_BIT ADC2
939
940
#define PCINT2_DDR DDRADC
941
#define PCINT2_PORT PORTADC
942
#define PCINT2_PIN PINADC
943
#define PCINT2_BIT ADC2
944
945
#define PA2_DDR DDRADC
946
#define PA2_PORT PORTADC
947
#define PA2_PIN PINADC
948
#define PA2_BIT ADC2
949
950
#define DO_A_DDR DDRADC
951
#define DO_A_PORT PORTADC
952
#define DO_A_PIN PINADC
953
#define DO_A_BIT ADC1
954
955
#define PCINT1_DDR DDRADC
956
#define PCINT1_PORT PORTADC
957
#define PCINT1_PIN PINADC
958
#define PCINT1_BIT ADC1
959
960
#define PA1_DDR DDRADC
961
#define PA1_PORT PORTADC
962
#define PA1_PIN PINADC
963
#define PA1_BIT ADC1
964
965
#define DI_A_DDR DDRADC
966
#define DI_A_PORT PORTADC
967
#define DI_A_PIN PINADC
968
#define DI_A_BIT ADC0
969
970
#define SDA_A_DDR DDRADC
971
#define SDA_A_PORT PORTADC
972
#define SDA_A_PIN PINADC
973
#define SDA_A_BIT ADC0
974
975
#define PCINT0_DDR DDRADC
976
#define PCINT0_PORT PORTADC
977
#define PCINT0_PIN PINADC
978
#define PCINT0_BIT ADC0
979
980
#define PA0_DDR DDRADC
981
#define PA0_PORT PORTADC
982
#define PA0_PIN PINADC
983
#define PA0_BIT ADC0
984
986
#endif
/* _AVR_ATtiny861A_H_ */
Generated by
1.8.13