|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
匠人手记!网络版!有要的可以看下
; |* _( l" M5 H) d& T3 }5 L# U初学者可以看下,对基础很好的哦!!!4 C4 \! x6 }9 m% j* k* G9 }2 V5 K
在应用的过程中,ICD2的连接总是失败,报错也是千奇百怪。匠人潜心研究,得出正8 Z4 u" U9 e- x$ m5 O9 n* D
确的连接顺序。这个顺序虽然繁琐,但是可以取保连接成功。如下:9 R( B' m& b! h+ }, D
(1)目标板通电
# N& z- o6 D; L% c(2)icd2接入 pc的 USB口' D3 A* `" O; \# S
(3)icd2与目标板连接% U' |+ B! Y3 c4 [$ f
(4)启动 MPLAB IDE
/ b! T1 X3 W( n$ U4 h- I' E0 G(5)选择编程工具或调试工具为 ICD2(菜单:“ debugger”->“select tool”->“MPLAB1 H/ r- |+ O9 u# i* s1 H
icd2”,或“programmer”->“select programmer”->“MPLAB icd2 ”)。连接成" c E' a6 z1 `6 {9 J% o3 ]) j
功!
0 l* o W+ I7 G6 d5 f5 n. p! L$ J, c8 f(6)编程(下载程序到目标板上的芯片)或调试! H, F4 R( g# N
(7)撤销第 5步的选择(工具选项改回为:“none”)
J8 W0 e" A( V8 s! p(8)退出 MPLAB IDE# f3 X4 b- t/ x+ j [9 h
(9)断开 icd2与目标板的连接$ I, O! n& b1 }, @+ x
(10)断开 icd2与 pc的连接
9 k3 y$ c% b. |) Z6 x6 U/ W, h(11)目标板断电
5 L$ x; F- p; k0 J6、从最简单的测试程序开始
& V$ b6 m# m$ X& a. R//========================== ?7 @3 d/ O1 e: f" O; |
//测试程序
& e' v: i+ G3 ^4 N: R//功能: PA0不断翻转,控制LED闪烁! G0 I3 ~" H* [$ ]7 n; L
//==========================( F% x5 g) C1 C& \! K0 @! m% j
文件名:Test.c; a: L6 C. l1 Q/ G k; n
#i nclude <pic.h>
; Z' x9 P: `( L9 q# m//定义芯片工作时的配置位
' g! W, O" h2 Y4 E: Z//__CONFIG(HS & WDTDIS & PWRTEN & BOREN & DP & LVPDIS & DUNPROT & WRTDIS & DEBUGEN. m. T4 m4 v# q5 T& ^; P
& UNPROTECT);
* Q6 Z2 r* a' L6 _& _% f__CONFIG(HS & WDTDIS & LVPDIS );8 E8 l, k5 r7 g- L: Y. q8 ~
//定义变量2 Q: z8 M3 a) p: h2 R J8 V" L
unsigned char i, j ,k;
7 Z. n. j8 x" `/ [- I2 B6 \% `bit flag1,flag2 ;$ r$ T0 G7 r4 l$ f- o$ Y l
//函数8 y5 s) |& M, T( f2 q) n5 n) |$ `
void main(void)
( E2 P) g4 ~# o4 A9 @" ^& N# n{ |/ e% \2 R! ]% @ N% \( B0 ~8 x$ ^
i=0;3 D1 f6 X* D; W% \
j=0;
& a, \0 V @ f' L# vk=0;
6 K8 H( J5 [7 C/ vTRISA=0x00;9 G# {9 i% E/ b7 b; I
while(1)
5 N/ D: @2 T6 ?* _7 c{ e* _5 O" n$ ~) f
PORTA=0x01;# @. \& W. s% q) _! S
for ( i=255; i!=0 ; i-- )
. _ q" U' W1 D6 d! J7 R{
2 \- A: f% k3 ~8 bfor (j=255 ; j!=0 ; j--)* M/ I, W: c! |' u
{, F+ Z* ~8 I9 B2 m2 [
第 4页4 G* n4 |; U0 c; ~. t* ]
" G e- V ^8 ^
0 ^& j: P8 S* _+ k; k+ F E0 s
5 a" |$ q% U( M- z( f0 s) E8 ~* @5 a5 O# O0 I: y" D& `% {
Y- @. {. O, d7 G}
# k6 j8 ~7 |- I& _$ U}& B1 d4 p/ Z& `* r; ?
PORTA=0x00;" z+ [1 R: ]# f' k
for ( i=255; i!=0 ; i-- )
6 w: c& f/ u8 X) O9 |8 @{2 E% ]5 F+ A# o/ p3 \
for (j=255 ; j!=0 ; j--)# c3 `; v; x6 ^+ Y. ^7 S+ L# p
{
! O8 E2 H, \( _( P}
0 e8 l4 J; [) Z: l}
" p* v9 V+ t% D: R* k& j}$ m6 S$ Y# r; X; @2 S
}, A% A2 T" ~7 ?+ I" Y4 a0 F
说明:这个程序只有一个最最最最最最……最最简单的功能,就是让 PA0不断翻转,+ V- s- k' \: l
去控制一个独立 LED的闪烁。通过这个程序,匠人圆满完成了对开发工具和开发环境的初
7 r8 p; h# ~: C3 {步学习,达到以下学习目的:
- {5 k5 g: n1 N9 @+ J(1)快速入手。如何建立一个新项目,并向项目中添加文件;了解头文件《pic.h》- d. H$ M/ c8 ] E$ ~
的作用和引用方法;了解如何设置器件、配置位、择语言工具等选项。
4 J% z, t( Y$ g9 {0 j9 V* f- v" H' L(2)学习程序的调试。如何进行编译、连接、除错。熟悉 MPLAB IDE和 PICC的
f) H$ \4 `; B/ `, y3 T工作环境,如何选择 DEBUG、如何设置相关参数;熟悉 SIM(软件仿真)的应
- L: F) R" E2 K+ o+ K3 R5 E" N用,包括单步、全速、断点等调试手段;以及如何在调试过程中观察内存、 IO
+ u. N2 ]! ^# A- o3 ]口、堆栈中的数据;如何观察编译后的 asm代码和 lst文件。
" _1 s9 m6 E7 Q& e" W2 e' n(3)学习 ICD2的应用。如何连接目标板和 ICD2、注意事项;如何下载程序到芯片,: ~% N) P6 m0 _; B" |
并且让芯片脱离 ICD2后单独工作。
6 D# v0 n. M% w% N- Q+ o" H
# a6 R' E" {2 Z7 Z6 k$ ^7 u2 }. M
7 B8 }5 u/ J9 ~7 a( J下载:1 B9 c7 ]3 W4 b1 M. f
. X2 x" u# W0 V5 _) a* @
|
|