My Marlin configs for Fabrikator Mini and CTC i3 Pro B
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

fastio_AT90USB.h 15KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697
  1. /**
  2. * Marlin 3D Printer Firmware
  3. * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
  4. *
  5. * Based on Sprinter and grbl.
  6. * Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
  7. *
  8. * This program is free software: you can redistribute it and/or modify
  9. * it under the terms of the GNU General Public License as published by
  10. * the Free Software Foundation, either version 3 of the License, or
  11. * (at your option) any later version.
  12. *
  13. * This program is distributed in the hope that it will be useful,
  14. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16. * GNU General Public License for more details.
  17. *
  18. * You should have received a copy of the GNU General Public License
  19. * along with this program. If not, see <https://www.gnu.org/licenses/>.
  20. *
  21. */
  22. #pragma once
  23. /**
  24. * Pin mapping (Teensy) for AT90USB646, 647, 1286, and 1287
  25. *
  26. * Logical Pin: 28 29 30 31 32 33 34 35 20 21 22 23 24 25 26 27 10 11 12 13 14 15 16 17 00 01 02 03 04 05 06 07 08 09(46*47)36 37 18 19 38 39 40 41 42 43 44 45
  27. * Port: A0 A1 A2 A3 A4 A5 A6 A7 B0 B1 B2 B3 B4 B5 B6 B7 C0 C1 C2 C3 C4 C5 C6 C7 D0 D1 D2 D3 D4 D5 D6 D7 E0 E1 E2 E3 E4 E5 E6 E7 F0 F1 F2 F3 F4 F5 F6 F7
  28. * The logical pins 46 and 47 are not supported by Teensyduino, but are supported below as E2 and E3
  29. */
  30. #include "../fastio.h"
  31. // change for your board
  32. #define DEBUG_LED DIO31 /* led D5 red */
  33. // SPI
  34. #define SCK DIO21 // 9
  35. #define MISO DIO23 // 11
  36. #define MOSI DIO22 // 10
  37. #define SS DIO20 // 8
  38. // Digital I/O
  39. #define DIO0_PIN PIND0
  40. #define DIO0_RPORT PIND
  41. #define DIO0_WPORT PORTD
  42. #define DIO0_PWM 0
  43. #define DIO0_DDR DDRD
  44. #define DIO1_PIN PIND1
  45. #define DIO1_RPORT PIND
  46. #define DIO1_WPORT PORTD
  47. #define DIO1_PWM 0
  48. #define DIO1_DDR DDRD
  49. #define DIO2_PIN PIND2
  50. #define DIO2_RPORT PIND
  51. #define DIO2_WPORT PORTD
  52. #define DIO2_PWM 0
  53. #define DIO2_DDR DDRD
  54. #define DIO3_PIN PIND3
  55. #define DIO3_RPORT PIND
  56. #define DIO3_WPORT PORTD
  57. #define DIO3_PWM 0
  58. #define DIO3_DDR DDRD
  59. #define DIO4_PIN PIND4
  60. #define DIO4_RPORT PIND
  61. #define DIO4_WPORT PORTD
  62. #define DIO4_PWM 0
  63. #define DIO4_DDR DDRD
  64. #define DIO5_PIN PIND5
  65. #define DIO5_RPORT PIND
  66. #define DIO5_WPORT PORTD
  67. #define DIO5_PWM 0
  68. #define DIO5_DDR DDRD
  69. #define DIO6_PIN PIND6
  70. #define DIO6_RPORT PIND
  71. #define DIO6_WPORT PORTD
  72. #define DIO6_PWM 0
  73. #define DIO6_DDR DDRD
  74. #define DIO7_PIN PIND7
  75. #define DIO7_RPORT PIND
  76. #define DIO7_WPORT PORTD
  77. #define DIO7_PWM 0
  78. #define DIO7_DDR DDRD
  79. #define DIO8_PIN PINE0
  80. #define DIO8_RPORT PINE
  81. #define DIO8_WPORT PORTE
  82. #define DIO8_PWM 0
  83. #define DIO8_DDR DDRE
  84. #define DIO9_PIN PINE1
  85. #define DIO9_RPORT PINE
  86. #define DIO9_WPORT PORTE
  87. #define DIO9_PWM 0
  88. #define DIO9_DDR DDRE
  89. #define DIO10_PIN PINC0
  90. #define DIO10_RPORT PINC
  91. #define DIO10_WPORT PORTC
  92. #define DIO10_PWM 0
  93. #define DIO10_DDR DDRC
  94. #define DIO11_PIN PINC1
  95. #define DIO11_RPORT PINC
  96. #define DIO11_WPORT PORTC
  97. #define DIO11_PWM 0
  98. #define DIO11_DDR DDRC
  99. #define DIO12_PIN PINC2
  100. #define DIO12_RPORT PINC
  101. #define DIO12_WPORT PORTC
  102. #define DIO12_PWM 0
  103. #define DIO12_DDR DDRC
  104. #define DIO13_PIN PINC3
  105. #define DIO13_RPORT PINC
  106. #define DIO13_WPORT PORTC
  107. #define DIO13_PWM 0
  108. #define DIO13_DDR DDRC
  109. #define DIO14_PIN PINC4
  110. #define DIO14_RPORT PINC
  111. #define DIO14_WPORT PORTC
  112. #define DIO14_PWM 0 // OC3C
  113. #define DIO14_DDR DDRC
  114. #define DIO15_PIN PINC5
  115. #define DIO15_RPORT PINC
  116. #define DIO15_WPORT PORTC
  117. #define DIO15_PWM 0 // OC3B
  118. #define DIO15_DDR DDRC
  119. #define DIO16_PIN PINC6
  120. #define DIO16_RPORT PINC
  121. #define DIO16_WPORT PORTC
  122. #define DIO16_PWM 0 // OC3A
  123. #define DIO16_DDR DDRC
  124. #define DIO17_PIN PINC7
  125. #define DIO17_RPORT PINC
  126. #define DIO17_WPORT PORTC
  127. #define DIO17_PWM 0
  128. #define DIO17_DDR DDRC
  129. #define DIO18_PIN PINE6
  130. #define DIO18_RPORT PINE
  131. #define DIO18_WPORT PORTE
  132. #define DIO18_PWM 0
  133. #define DIO18_DDR DDRE
  134. #define DIO19_PIN PINE7
  135. #define DIO19_RPORT PINE
  136. #define DIO19_WPORT PORTE
  137. #define DIO19_PWM 0
  138. #define DIO19_DDR DDRE
  139. #define DIO20_PIN PINB0
  140. #define DIO20_RPORT PINB
  141. #define DIO20_WPORT PORTB
  142. #define DIO20_PWM 0
  143. #define DIO20_DDR DDRB
  144. #define DIO21_PIN PINB1
  145. #define DIO21_RPORT PINB
  146. #define DIO21_WPORT PORTB
  147. #define DIO21_PWM 0
  148. #define DIO21_DDR DDRB
  149. #define DIO22_PIN PINB2
  150. #define DIO22_RPORT PINB
  151. #define DIO22_WPORT PORTB
  152. #define DIO22_PWM 0
  153. #define DIO22_DDR DDRB
  154. #define DIO23_PIN PINB3
  155. #define DIO23_RPORT PINB
  156. #define DIO23_WPORT PORTB
  157. #define DIO23_PWM 0
  158. #define DIO23_DDR DDRB
  159. #define DIO24_PIN PINB4
  160. #define DIO24_RPORT PINB
  161. #define DIO24_WPORT PORTB
  162. #define DIO24_PWM 0 // OC2A
  163. #define DIO24_DDR DDRB
  164. #define DIO25_PIN PINB5
  165. #define DIO25_RPORT PINB
  166. #define DIO25_WPORT PORTB
  167. #define DIO25_PWM 0 // OC1A
  168. #define DIO25_DDR DDRB
  169. #define DIO26_PIN PINB6
  170. #define DIO26_RPORT PINB
  171. #define DIO26_WPORT PORTB
  172. #define DIO26_PWM 0 // OC1B
  173. #define DIO26_DDR DDRB
  174. #define DIO27_PIN PINB7
  175. #define DIO27_RPORT PINB
  176. #define DIO27_WPORT PORTB
  177. #define DIO27_PWM 0 // OC1C
  178. #define DIO27_DDR DDRB
  179. #define DIO28_PIN PINA0
  180. #define DIO28_RPORT PINA
  181. #define DIO28_WPORT PORTA
  182. #define DIO28_PWM 0
  183. #define DIO28_DDR DDRA
  184. #define DIO29_PIN PINA1
  185. #define DIO29_RPORT PINA
  186. #define DIO29_WPORT PORTA
  187. #define DIO29_PWM 0
  188. #define DIO29_DDR DDRA
  189. #define DIO30_PIN PINA2
  190. #define DIO30_RPORT PINA
  191. #define DIO30_WPORT PORTA
  192. #define DIO30_PWM 0
  193. #define DIO30_DDR DDRA
  194. #define DIO31_PIN PINA3
  195. #define DIO31_RPORT PINA
  196. #define DIO31_WPORT PORTA
  197. #define DIO31_PWM 0
  198. #define DIO31_DDR DDRA
  199. #define DIO32_PIN PINA4
  200. #define DIO32_RPORT PINA
  201. #define DIO32_WPORT PORTA
  202. #define DIO32_PWM 0
  203. #define DIO32_DDR DDRA
  204. #define DIO33_PIN PINA5
  205. #define DIO33_RPORT PINA
  206. #define DIO33_WPORT PORTA
  207. #define DIO33_PWM 0
  208. #define DIO33_DDR DDRA
  209. #define DIO34_PIN PINA6
  210. #define DIO34_RPORT PINA
  211. #define DIO34_WPORT PORTA
  212. #define DIO34_PWM 0
  213. #define DIO34_DDR DDRA
  214. #define DIO35_PIN PINA7
  215. #define DIO35_RPORT PINA
  216. #define DIO35_WPORT PORTA
  217. #define DIO35_PWM 0
  218. #define DIO35_DDR DDRA
  219. #define DIO36_PIN PINE4
  220. #define DIO36_RPORT PINE
  221. #define DIO36_WPORT PORTE
  222. #define DIO36_PWM 0
  223. #define DIO36_DDR DDRE
  224. #define DIO37_PIN PINE5
  225. #define DIO37_RPORT PINE
  226. #define DIO37_WPORT PORTE
  227. #define DIO37_PWM 0
  228. #define DIO37_DDR DDRE
  229. #define DIO38_PIN PINF0
  230. #define DIO38_RPORT PINF
  231. #define DIO38_WPORT PORTF
  232. #define DIO38_PWM 0
  233. #define DIO38_DDR DDRF
  234. #define DIO39_PIN PINF1
  235. #define DIO39_RPORT PINF
  236. #define DIO39_WPORT PORTF
  237. #define DIO39_PWM 0
  238. #define DIO39_DDR DDRF
  239. #define DIO40_PIN PINF2
  240. #define DIO40_RPORT PINF
  241. #define DIO40_WPORT PORTF
  242. #define DIO40_PWM 0
  243. #define DIO40_DDR DDRF
  244. #define DIO41_PIN PINF3
  245. #define DIO41_RPORT PINF
  246. #define DIO41_WPORT PORTF
  247. #define DIO41_PWM 0
  248. #define DIO41_DDR DDRF
  249. #define DIO42_PIN PINF4
  250. #define DIO42_RPORT PINF
  251. #define DIO42_WPORT PORTF
  252. #define DIO42_PWM 0
  253. #define DIO42_DDR DDRF
  254. #define DIO43_PIN PINF5
  255. #define DIO43_RPORT PINF
  256. #define DIO43_WPORT PORTF
  257. #define DIO43_PWM 0
  258. #define DIO43_DDR DDRF
  259. #define DIO44_PIN PINF6
  260. #define DIO44_RPORT PINF
  261. #define DIO44_WPORT PORTF
  262. #define DIO44_PWM 0
  263. #define DIO44_DDR DDRF
  264. #define DIO45_PIN PINF7
  265. #define DIO45_RPORT PINF
  266. #define DIO45_WPORT PORTF
  267. #define DIO45_PWM 0
  268. #define DIO45_DDR DDRF
  269. #define AIO0_PIN PINF0
  270. #define AIO0_RPORT PINF
  271. #define AIO0_WPORT PORTF
  272. #define AIO0_PWM 0
  273. #define AIO0_DDR DDRF
  274. #define AIO1_PIN PINF1
  275. #define AIO1_RPORT PINF
  276. #define AIO1_WPORT PORTF
  277. #define AIO1_PWM 0
  278. #define AIO1_DDR DDRF
  279. #define AIO2_PIN PINF2
  280. #define AIO2_RPORT PINF
  281. #define AIO2_WPORT PORTF
  282. #define AIO2_PWM 0
  283. #define AIO2_DDR DDRF
  284. #define AIO3_PIN PINF3
  285. #define AIO3_RPORT PINF
  286. #define AIO3_WPORT PORTF
  287. #define AIO3_PWM 0
  288. #define AIO3_DDR DDRF
  289. #define AIO4_PIN PINF4
  290. #define AIO4_RPORT PINF
  291. #define AIO4_WPORT PORTF
  292. #define AIO4_PWM 0
  293. #define AIO4_DDR DDRF
  294. #define AIO5_PIN PINF5
  295. #define AIO5_RPORT PINF
  296. #define AIO5_WPORT PORTF
  297. #define AIO5_PWM 0
  298. #define AIO5_DDR DDRF
  299. #define AIO6_PIN PINF6
  300. #define AIO6_RPORT PINF
  301. #define AIO6_WPORT PORTF
  302. #define AIO6_PWM 0
  303. #define AIO6_DDR DDRF
  304. #define AIO7_PIN PINF7
  305. #define AIO7_RPORT PINF
  306. #define AIO7_WPORT PORTF
  307. #define AIO7_PWM 0
  308. #define AIO7_DDR DDRF
  309. //-- Begin not supported by Teensyduino
  310. //-- don't use Arduino functions on these pins pinMode/digitalWrite/etc
  311. #define DIO46_PIN PINE2
  312. #define DIO46_RPORT PINE
  313. #define DIO46_WPORT PORTE
  314. #define DIO46_PWM 0
  315. #define DIO46_DDR DDRE
  316. #define DIO47_PIN PINE3
  317. #define DIO47_RPORT PINE
  318. #define DIO47_WPORT PORTE
  319. #define DIO47_PWM 0
  320. #define DIO47_DDR DDRE
  321. #define TEENSY_E2 46
  322. #define TEENSY_E3 47
  323. //-- end not supported by Teensyduino
  324. #undef PA0
  325. #define PA0_PIN PINA0
  326. #define PA0_RPORT PINA
  327. #define PA0_WPORT PORTA
  328. #define PA0_PWM 0
  329. #define PA0_DDR DDRA
  330. #undef PA1
  331. #define PA1_PIN PINA1
  332. #define PA1_RPORT PINA
  333. #define PA1_WPORT PORTA
  334. #define PA1_PWM 0
  335. #define PA1_DDR DDRA
  336. #undef PA2
  337. #define PA2_PIN PINA2
  338. #define PA2_RPORT PINA
  339. #define PA2_WPORT PORTA
  340. #define PA2_PWM 0
  341. #define PA2_DDR DDRA
  342. #undef PA3
  343. #define PA3_PIN PINA3
  344. #define PA3_RPORT PINA
  345. #define PA3_WPORT PORTA
  346. #define PA3_PWM 0
  347. #define PA3_DDR DDRA
  348. #undef PA4
  349. #define PA4_PIN PINA4
  350. #define PA4_RPORT PINA
  351. #define PA4_WPORT PORTA
  352. #define PA4_PWM 0
  353. #define PA4_DDR DDRA
  354. #undef PA5
  355. #define PA5_PIN PINA5
  356. #define PA5_RPORT PINA
  357. #define PA5_WPORT PORTA
  358. #define PA5_PWM 0
  359. #define PA5_DDR DDRA
  360. #undef PA6
  361. #define PA6_PIN PINA6
  362. #define PA6_RPORT PINA
  363. #define PA6_WPORT PORTA
  364. #define PA6_PWM 0
  365. #define PA6_DDR DDRA
  366. #undef PA7
  367. #define PA7_PIN PINA7
  368. #define PA7_RPORT PINA
  369. #define PA7_WPORT PORTA
  370. #define PA7_PWM 0
  371. #define PA7_DDR DDRA
  372. #undef PB0
  373. #define PB0_PIN PINB0
  374. #define PB0_RPORT PINB
  375. #define PB0_WPORT PORTB
  376. #define PB0_PWM 0
  377. #define PB0_DDR DDRB
  378. #undef PB1
  379. #define PB1_PIN PINB1
  380. #define PB1_RPORT PINB
  381. #define PB1_WPORT PORTB
  382. #define PB1_PWM 0
  383. #define PB1_DDR DDRB
  384. #undef PB2
  385. #define PB2_PIN PINB2
  386. #define PB2_RPORT PINB
  387. #define PB2_WPORT PORTB
  388. #define PB2_PWM 0
  389. #define PB2_DDR DDRB
  390. #undef PB3
  391. #define PB3_PIN PINB3
  392. #define PB3_RPORT PINB
  393. #define PB3_WPORT PORTB
  394. #define PB3_PWM 0
  395. #define PB3_DDR DDRB
  396. #undef PB4
  397. #define PB4_PIN PINB4
  398. #define PB4_RPORT PINB
  399. #define PB4_WPORT PORTB
  400. #define PB4_PWM 0
  401. #define PB4_DDR DDRB
  402. #undef PB5
  403. #define PB5_PIN PINB5
  404. #define PB5_RPORT PINB
  405. #define PB5_WPORT PORTB
  406. #define PB5_PWM 0
  407. #define PB5_DDR DDRB
  408. #undef PB6
  409. #define PB6_PIN PINB6
  410. #define PB6_RPORT PINB
  411. #define PB6_WPORT PORTB
  412. #define PB6_PWM 0
  413. #define PB6_DDR DDRB
  414. #undef PB7
  415. #define PB7_PIN PINB7
  416. #define PB7_RPORT PINB
  417. #define PB7_WPORT PORTB
  418. #define PB7_PWM 0
  419. #define PB7_DDR DDRB
  420. #undef PC0
  421. #define PC0_PIN PINC0
  422. #define PC0_RPORT PINC
  423. #define PC0_WPORT PORTC
  424. #define PC0_PWM 0
  425. #define PC0_DDR DDRC
  426. #undef PC1
  427. #define PC1_PIN PINC1
  428. #define PC1_RPORT PINC
  429. #define PC1_WPORT PORTC
  430. #define PC1_PWM 0
  431. #define PC1_DDR DDRC
  432. #undef PC2
  433. #define PC2_PIN PINC2
  434. #define PC2_RPORT PINC
  435. #define PC2_WPORT PORTC
  436. #define PC2_PWM 0
  437. #define PC2_DDR DDRC
  438. #undef PC3
  439. #define PC3_PIN PINC3
  440. #define PC3_RPORT PINC
  441. #define PC3_WPORT PORTC
  442. #define PC3_PWM 0
  443. #define PC3_DDR DDRC
  444. #undef PC4
  445. #define PC4_PIN PINC4
  446. #define PC4_RPORT PINC
  447. #define PC4_WPORT PORTC
  448. #define PC4_PWM 0
  449. #define PC4_DDR DDRC
  450. #undef PC5
  451. #define PC5_PIN PINC5
  452. #define PC5_RPORT PINC
  453. #define PC5_WPORT PORTC
  454. #define PC5_PWM 0
  455. #define PC5_DDR DDRC
  456. #undef PC6
  457. #define PC6_PIN PINC6
  458. #define PC6_RPORT PINC
  459. #define PC6_WPORT PORTC
  460. #define PC6_PWM 0
  461. #define PC6_DDR DDRC
  462. #undef PC7
  463. #define PC7_PIN PINC7
  464. #define PC7_RPORT PINC
  465. #define PC7_WPORT PORTC
  466. #define PC7_PWM 0
  467. #define PC7_DDR DDRC
  468. #undef PD0
  469. #define PD0_PIN PIND0
  470. #define PD0_RPORT PIND
  471. #define PD0_WPORT PORTD
  472. #define PD0_PWM 0 // OC0B
  473. #define PD0_DDR DDRD
  474. #undef PD1
  475. #define PD1_PIN PIND1
  476. #define PD1_RPORT PIND
  477. #define PD1_WPORT PORTD
  478. #define PD1_PWM 0 // OC2B
  479. #define PD1_DDR DDRD
  480. #undef PD2
  481. #define PD2_PIN PIND2
  482. #define PD2_RPORT PIND
  483. #define PD2_WPORT PORTD
  484. #define PD2_PWM 0
  485. #define PD2_DDR DDRD
  486. #undef PD3
  487. #define PD3_PIN PIND3
  488. #define PD3_RPORT PIND
  489. #define PD3_WPORT PORTD
  490. #define PD3_PWM 0
  491. #define PD3_DDR DDRD
  492. #undef PD4
  493. #define PD4_PIN PIND4
  494. #define PD4_RPORT PIND
  495. #define PD4_WPORT PORTD
  496. #define PD4_PWM 0
  497. #define PD4_DDR DDRD
  498. #undef PD5
  499. #define PD5_PIN PIND5
  500. #define PD5_RPORT PIND
  501. #define PD5_WPORT PORTD
  502. #define PD5_PWM 0
  503. #define PD5_DDR DDRD
  504. #undef PD6
  505. #define PD6_PIN PIND6
  506. #define PD6_RPORT PIND
  507. #define PD6_WPORT PORTD
  508. #define PD6_PWM 0
  509. #define PD6_DDR DDRD
  510. #undef PD7
  511. #define PD7_PIN PIND7
  512. #define PD7_RPORT PIND
  513. #define PD7_WPORT PORTD
  514. #define PD7_PWM 0
  515. #define PD7_DDR DDRD
  516. #undef PE0
  517. #define PE0_PIN PINE0
  518. #define PE0_RPORT PINE
  519. #define PE0_WPORT PORTE
  520. #define PE0_PWM 0
  521. #define PE0_DDR DDRE
  522. #undef PE1
  523. #define PE1_PIN PINE1
  524. #define PE1_RPORT PINE
  525. #define PE1_WPORT PORTE
  526. #define PE1_PWM 0
  527. #define PE1_DDR DDRE
  528. #undef PE2
  529. #define PE2_PIN PINE2
  530. #define PE2_RPORT PINE
  531. #define PE2_WPORT PORTE
  532. #define PE2_PWM 0
  533. #define PE2_DDR DDRE
  534. #undef PE3
  535. #define PE3_PIN PINE3
  536. #define PE3_RPORT PINE
  537. #define PE3_WPORT PORTE
  538. #define PE3_PWM 0
  539. #define PE3_DDR DDRE
  540. #undef PE4
  541. #define PE4_PIN PINE4
  542. #define PE4_RPORT PINE
  543. #define PE4_WPORT PORTE
  544. #define PE4_PWM 0
  545. #define PE4_DDR DDRE
  546. #undef PE5
  547. #define PE5_PIN PINE5
  548. #define PE5_RPORT PINE
  549. #define PE5_WPORT PORTE
  550. #define PE5_PWM 0
  551. #define PE5_DDR DDRE
  552. #undef PE6
  553. #define PE6_PIN PINE6
  554. #define PE6_RPORT PINE
  555. #define PE6_WPORT PORTE
  556. #define PE6_PWM 0
  557. #define PE6_DDR DDRE
  558. #undef PE7
  559. #define PE7_PIN PINE7
  560. #define PE7_RPORT PINE
  561. #define PE7_WPORT PORTE
  562. #define PE7_PWM 0
  563. #define PE7_DDR DDRE
  564. #undef PF0
  565. #define PF0_PIN PINF0
  566. #define PF0_RPORT PINF
  567. #define PF0_WPORT PORTF
  568. #define PF0_PWM 0
  569. #define PF0_DDR DDRF
  570. #undef PF1
  571. #define PF1_PIN PINF1
  572. #define PF1_RPORT PINF
  573. #define PF1_WPORT PORTF
  574. #define PF1_PWM 0
  575. #define PF1_DDR DDRF
  576. #undef PF2
  577. #define PF2_PIN PINF2
  578. #define PF2_RPORT PINF
  579. #define PF2_WPORT PORTF
  580. #define PF2_PWM 0
  581. #define PF2_DDR DDRF
  582. #undef PF3
  583. #define PF3_PIN PINF3
  584. #define PF3_RPORT PINF
  585. #define PF3_WPORT PORTF
  586. #define PF3_PWM 0
  587. #define PF3_DDR DDRF
  588. #undef PF4
  589. #define PF4_PIN PINF4
  590. #define PF4_RPORT PINF
  591. #define PF4_WPORT PORTF
  592. #define PF4_PWM 0
  593. #define PF4_DDR DDRF
  594. #undef PF5
  595. #define PF5_PIN PINF5
  596. #define PF5_RPORT PINF
  597. #define PF5_WPORT PORTF
  598. #define PF5_PWM 0
  599. #define PF5_DDR DDRF
  600. #undef PF6
  601. #define PF6_PIN PINF6
  602. #define PF6_RPORT PINF
  603. #define PF6_WPORT PORTF
  604. #define PF6_PWM 0
  605. #define PF6_DDR DDRF
  606. #undef PF7
  607. #define PF7_PIN PINF7
  608. #define PF7_RPORT PINF
  609. #define PF7_WPORT PORTF
  610. #define PF7_PWM 0
  611. #define PF7_DDR DDRF
  612. /**
  613. * Some of the pin mapping functions of the Teensduino extension to the Arduino IDE
  614. * do not function the same as the other Arduino extensions.
  615. */
  616. //digitalPinToTimer(pin) function works like Arduino but Timers are not defined
  617. #define TIMER0B 1
  618. #define TIMER1A 7
  619. #define TIMER1B 8
  620. #define TIMER1C 9
  621. #define TIMER2A 6
  622. #define TIMER2B 2
  623. #define TIMER3A 5
  624. #define TIMER3B 4
  625. #define TIMER3C 3