|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
X41 1to4DFU Fixture PCB 跟 源程序
& ~5 B4 I9 }( h: u4 g4 \//============================================
8 }! S3 {# U& `5 O//=============程序信息=======================1 A7 w; Q& h# `) k% v$ G5 J8 C" |
/******************************************
# W) k: ]" B: n, B5 E+ N2 L1、作者:sunshine tang
: \* a( N6 E# [; e0 q- ?* I4、产品名称:X41 1to4DFU Fixture' r. L8 ]6 v( K, F* ^7 {
5、版本:V1.00$ U! d$ f. O4 Q' H$ S2 C# y: {9 ~
6、程序名称:主程序
/ b* ^0 ?, u' B7、功能描述:控制4路4.0V的电源通断,检测4路电源的过流,: ]8 M6 g* v! U+ @6 `' H0 R
两路按键控制,4路PASS指示灯,4路FAIL指示灯,2路气缸
0 ^) l! u; n9 B5 j1 V 控制,主板开机模式控制;通信波特率:115200,UART1,
" Q& ]& N# z5 B3 [ 接收数据结束符为\r\n,发送数据结束符为\r\n@_@。( I, s! n" k! Z( ]6 {& T$ M% V9 } z
8、CPU类型:LPC1768
+ @! C- g* f8 `0 l) m9 X- d*******************************************/) h& K2 f1 n6 P: ?9 r- _
6 X+ z+ O1 f9 s+ z( z9 H#include "..\config.h"
. X2 r. y+ ^/ e" C% R0 j#include "..\time.h"
0 B9 L$ j ~) B//=============================
' o& \7 o5 ^2 t/ r& Kextern char GucRcvBuf[50] ;
1 [+ U+ L/ c/ C4 N) C, vextern INT8U GulNum;: e% p8 I) r, N* u- d
extern INT8U GucRcvNew;
8 ^0 _$ P3 |' m! d* h# ~extern INT8U uflag; ' e. u7 p8 S( m2 K) s& G+ J; k6 @) g
extern INT8U bflag;
) A4 V( o, ^9 d/ G( S# K5 _+ ~- Eextern INT32U time0v;
" q9 O1 a, i+ s6 V
! u; I: ~% H+ `//=================================3 H$ [) L1 r; u% S4 ]! z$ @
int main (void)4 ? c0 w9 e+ Y( r
{
' B8 P# \ F. Q3 w1 j3 m
2 \. e. {: v+ |9 _; g8 m4 Q* R targetInit(); //初始化目标板,切勿删除
: w9 e$ s: R7 b7 l { pinInit(); //引脚初始化
2 ^" E, R- S) U' g* k+ Y: } PINMODE0=0x0000;//使用片内上拉0 N! ~; }" z; H3 U2 P1 L
1 H, E& v, L: l3 p6 n G# F //DFU初始化输出1.8V高电平 2012.4.69 f z$ ]- ~7 u2 L9 F
FIO1DIR |= (1<<16); FIO1CLR = (1<<16);& d+ g* f6 X7 b# J) M3 ^; D' m: m
FIO1DIR |= (1<<9); FIO1CLR = (1<<9);
; a K& Z9 c% Q FIO1DIR |= (1<<8); FIO1CLR = (1<<8);: N$ `1 v3 ~5 x( w
FIO1DIR |= (1<<4); FIO1CLR = (1<<4);
1 F3 A9 g0 Y, S& D1 G+ n3 O- H; p' T6 \9 ^* r, \: X3 q7 M
GucRcvNew = 0;
1 v) u5 l- m. R uartInit (); //串口初始化
+ _1 ^- h: H$ t% ?- c4 N: v ] zyIsrSet(NVIC_UART1,(unsigned long)uart1Isr,PRIO_ONE);) W( h% Y! F$ ]+ \) ]2 w
timer0Init ();3 |6 i, \% c5 c
r88k7_init();
9 D: N' @ q6 d fiature_init(); & \$ N7 e( C) w6 V) p
while (1)
5 ]2 W. P( i1 t' _( p5 D M {7 I7 W. q6 ]( s
if (GucRcvNew == 1){ //判断是否有新数据 . z+ b. W4 t; k3 n! S/ h1 r0 M1 y* ~
GucRcvNew = 0; // 清除标志 $ i; o( _: e" m8 }. P! o Y0 D& F
if(uflag==1)
, c' W: @; [, {0 i2 C0 ]5 p$ V* U3 L {
" i9 N, M6 b q: t6 g. C w3 C" O check(GucRcvBuf);
- s6 L% X& `1 v Y GulNum=0;+ [% e( f$ s1 z* G
uflag=0;/ j/ Q+ @5 r* K6 q9 C: f6 \6 g$ j& {
}& m2 E6 w) M) U; o* ?' R9 d
}. r* @% R7 q }& p4 ?
if(bflag==1)
5 ] x& q2 ?& B {3 Z8 _ p# {& c' @1 q# o; f, n }
uart1SendByte ('\b');# \" Q5 L% Y7 }
uart1SendByte (' ');
0 U$ _8 t1 l0 f) b7 \ uart1SendByte ('\b');$ Y5 z. B2 ?4 n+ l V! f8 ]
bflag=0;
. j8 `0 o7 s; a$ ?' f8 g- | }
. v, \2 }+ C% E0 d+ w StartKey();. ^5 H: T) G( o' P' O) x0 b- _5 H+ \
power_curr1();
# \. d! ]; @, h$ n* e& P }$ A9 K- ?+ d! p7 x) L
} X/ G9 R9 k6 S+ Y
/*********************************************************************************************************0 |/ W# z# }# j& _/ U! b
End Of File
1 k3 B. m+ W7 l*********************************************************************************************************/7 K" O+ A& @, z. d1 P! v+ [
5 k. p$ i6 ? o& _! t8 C1 A6 L" K s: a3 h$ x H; F
|
|