|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
X41 1to4DFU Fixture PCB 跟 源程序
: c2 q5 O: C$ a ]2 ^7 x//============================================
& Y4 i- x$ S5 l1 _//=============程序信息=======================2 | L3 X$ w* L8 D
/******************************************8 r3 e1 d( Y! C% G$ x, ~0 T
1、作者:sunshine tang A1 ^4 @0 C7 E3 F4 K
4、产品名称:X41 1to4DFU Fixture
' C7 }& U$ |* j2 R, L5、版本:V1.00. P% E. r1 K: c, @
6、程序名称:主程序. U4 h* l- y i$ w* W
7、功能描述:控制4路4.0V的电源通断,检测4路电源的过流,1 c" P+ u! g v9 w: u3 I% j7 x
两路按键控制,4路PASS指示灯,4路FAIL指示灯,2路气缸
# `4 l* X4 R3 E% v, I/ }7 I! A( y 控制,主板开机模式控制;通信波特率:115200,UART1,4 B9 L* O) A# A( W: c0 }* S. x3 X
接收数据结束符为\r\n,发送数据结束符为\r\n@_@。
5 I: L! I4 a! {8、CPU类型:LPC1768
& W" ~1 l2 U$ P" M*******************************************/
1 j% O1 N: i0 v# i& {% ~) D. K
/ H" b- P7 s8 G' n9 J" ^#include "..\config.h"8 @3 ?8 N, y& Q+ x5 v4 N
#include "..\time.h"
X0 }3 F9 H% r( Z//=============================
" e2 V% k: o. M0 `extern char GucRcvBuf[50] ;
1 ]7 X" J+ F! C0 c* r+ \extern INT8U GulNum;: F! ]8 \! n2 j) } C2 G% q8 q
extern INT8U GucRcvNew;
' W& z7 z6 ?- f" B2 B L! Yextern INT8U uflag;
! X0 M3 J0 o. ?8 o1 s6 G% @, ?extern INT8U bflag;
+ ]# x. M1 A3 u: yextern INT32U time0v; & l2 }% k! W+ o* M) K+ X( V
8 o* x( f m2 }' d4 h8 D( e//=================================
; n4 D) @# N$ s0 d7 s9 @int main (void)
G! l3 q$ H) w& v8 t8 G- N# _{
& n% ?) l7 G9 D- H+ j* A, D$ u. a. M* s
targetInit(); //初始化目标板,切勿删除
1 u& V' u3 N2 i" k G pinInit(); //引脚初始化
1 I8 d/ s3 e! M5 t$ e2 _1 a, p: s PINMODE0=0x0000;//使用片内上拉
' K, R! A, s. ]7 X3 Y
$ L! i0 t. f: J9 c; [ //DFU初始化输出1.8V高电平 2012.4.6
. V3 X# V6 W$ e8 a W$ x FIO1DIR |= (1<<16); FIO1CLR = (1<<16);
3 P2 P3 s# g* b3 j% f2 i' n6 `8 a FIO1DIR |= (1<<9); FIO1CLR = (1<<9);
% i; O/ X% u; q0 x6 H) Z FIO1DIR |= (1<<8); FIO1CLR = (1<<8);
! y2 Y$ ^( |' P FIO1DIR |= (1<<4); FIO1CLR = (1<<4);2 n0 ]& R7 b. Y0 X- U) B
- H7 }) x& I% M8 N* ^ GucRcvNew = 0;
/ J8 F$ L. C/ P7 P uartInit (); //串口初始化
& l& ^7 r! G ?. A zyIsrSet(NVIC_UART1,(unsigned long)uart1Isr,PRIO_ONE);
# R1 Y& b* A: h( C9 V9 h$ ?- u- T) ^ timer0Init ();2 G4 i6 J% h8 P8 A
r88k7_init(); 7 d- o" C) u/ C6 Q
fiature_init();
9 M: K: R) |; n6 q/ s) s% d while (1)
) N( _6 m( @+ ?' M. o {* {7 b+ d; [6 S( C( G. s+ l
if (GucRcvNew == 1){ //判断是否有新数据
7 f" Z1 q7 i9 a7 I( m& R2 j GucRcvNew = 0; // 清除标志 . M1 }$ Y" q9 g- k1 d: |
if(uflag==1)6 n" S" |: l, l$ q
{9 y( r* M+ ?3 |" l8 n
check(GucRcvBuf);
% b" H/ M0 r5 u4 c0 Y" M4 ` GulNum=0;
% J( d" A! s% F+ i* J1 @" A uflag=0;
' {/ A ]3 M5 s, d( ~- y6 L }3 W0 v4 J5 s9 [; u t0 w
} Q8 y4 J8 h( ~7 n$ ]
if(bflag==1)
: r0 O' T: F; G7 q5 w& {3 Y {7 a( V8 v& `9 J& d! K" S5 j7 m
uart1SendByte ('\b');
$ n* O9 M( q$ p" e& S( o uart1SendByte (' ');0 r O; Q8 j1 x( D' n/ h! [
uart1SendByte ('\b');
- i) t) m; ]" x% ^$ }2 R3 Y bflag=0;4 }! D8 g2 F9 X1 R. r
}
" q( l: c' |# j) s StartKey();" }; S# A6 i& [, Z: B
power_curr1();
' j( E$ G s7 ` }; M* f1 r& n- O( O8 p' e6 E
}* [1 |8 D8 `3 b- ~
/*********************************************************************************************************# Z1 U% B/ v# I( W2 k; x( P# A
End Of File
* Z9 x; B/ f4 q0 [; }' }*********************************************************************************************************/
( c' D( b3 S( d# o5 x8 w% j: }9 M& D, t3 k0 X
# k) y) |5 [- D% y( \; E/ m
|
|