|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
X41 1to4DFU Fixture PCB 跟 源程序 , F9 n3 ?$ \$ x, o
//============================================# w* M* U2 E/ C1 m
//=============程序信息=======================
M4 y( |* K7 X: t; P* E! _3 w C/******************************************0 h. J& t! X' M/ j% z- K: C- F
1、作者:sunshine tang
, m6 N& Q$ E7 G+ u! |4、产品名称:X41 1to4DFU Fixture* l0 v8 c' P% v c, y
5、版本:V1.00
8 u: \7 l! A% x6、程序名称:主程序9 N* C. \& q j/ F R
7、功能描述:控制4路4.0V的电源通断,检测4路电源的过流,
7 M' B' W3 b; n* ~0 O 两路按键控制,4路PASS指示灯,4路FAIL指示灯,2路气缸
8 G- b h% k: w. Z9 ~' f" j) _6 ? 控制,主板开机模式控制;通信波特率:115200,UART1,
# m3 L" i% Y; ^% c+ t1 b 接收数据结束符为\r\n,发送数据结束符为\r\n@_@。8 y! S( ^. V5 G/ Q! q3 c
8、CPU类型:LPC1768
' X4 f5 l1 j7 R( V* W# S*******************************************/) r0 U6 t K2 {! L8 H. l
$ } k; N' S. D0 j0 S
#include "..\config.h"5 E0 [% |* i/ O4 o* C; w; q4 F2 o
#include "..\time.h"
$ Z: _; U: P) N8 b y//=============================0 r/ V9 ~/ c5 P, V+ `$ T3 I" N
extern char GucRcvBuf[50] ;
0 K" o# }, \# i' N" b# `: M8 f9 k+ Zextern INT8U GulNum;( |" K% i* {( q$ q) u: z
extern INT8U GucRcvNew;
; m) u, u6 }0 d0 Yextern INT8U uflag;
9 D8 x0 k! }7 Z9 U& M2 g1 S, Fextern INT8U bflag;
$ A& X0 s# R- c7 sextern INT32U time0v; ! i/ F1 a9 x' l
( B; m7 F, Z( e7 H
//=================================
1 C2 w; C8 \& i" M4 _int main (void)
* X3 J/ G# p- v{
* a! V. ], o- B
) ]% F2 v* m1 g; g1 L+ L I+ V targetInit(); //初始化目标板,切勿删除- S. ]0 P9 B. f9 A9 }
pinInit(); //引脚初始化 ) J) J/ m* H1 u) g
PINMODE0=0x0000;//使用片内上拉
% c3 _3 @ b% l: K6 d2 y" ?; I2 Z* Y' D8 k( C% B
//DFU初始化输出1.8V高电平 2012.4.6
$ g6 q, `( j d2 h6 \/ f- D q FIO1DIR |= (1<<16); FIO1CLR = (1<<16);
0 i0 ~5 B8 D9 e1 l |2 `0 s4 n FIO1DIR |= (1<<9); FIO1CLR = (1<<9);% F# l/ i! W! l9 c
FIO1DIR |= (1<<8); FIO1CLR = (1<<8);& f" D1 x" J* `2 l* i
FIO1DIR |= (1<<4); FIO1CLR = (1<<4);
/ V- d9 N2 G% f2 c/ U; P& n
" j" A6 ^" V; K# q% m+ S7 l1 c1 f GucRcvNew = 0;; \$ r! R8 ?! T ?" X
uartInit (); //串口初始化
7 ] c! I; ^6 @ t; G* [. P zyIsrSet(NVIC_UART1,(unsigned long)uart1Isr,PRIO_ONE);. P" S3 V# t$ k+ Z6 C6 m& D
timer0Init ();
0 ~: w& S9 Y9 Q r88k7_init(); 5 M+ u6 V: K; \# s, \) l- y+ r- I
fiature_init();
! g' i+ L/ @, k" k5 N" V while (1)
( u. b* y0 O5 a7 r+ T" g* c {8 o# A+ b" U& ]/ i
if (GucRcvNew == 1){ //判断是否有新数据
/ {) d4 o n1 M GucRcvNew = 0; // 清除标志
$ W& ]. l9 l* e7 }' E1 | if(uflag==1)4 N9 C" z. I- `& d
{
) o: ]0 a7 O$ _. `4 g( d% q check(GucRcvBuf);4 [0 {8 x2 h5 k! P5 a! r* a5 Q0 s- {2 [
GulNum=0;
- V" M% V' J- }& n2 N( G, G, Q uflag=0;+ O( \0 w: m9 m m" V
}: ^- D: L+ {5 g
}
0 y4 r, a/ g2 Z, S5 r, B/ C4 N if(bflag==1)3 D3 H, N5 T3 @
{ C6 T+ v8 V1 ]- z
uart1SendByte ('\b');
6 p) N3 @4 Q1 { uart1SendByte (' ');; O' x$ |7 a/ X9 X2 K6 V3 {$ U9 m% r: s2 d
uart1SendByte ('\b');1 L3 T& Z* b+ S& K
bflag=0;" a; n# @+ g& ?+ Z
}' Z; W; c8 m1 S/ k: Y/ i9 E
StartKey();1 Y7 \( e0 i/ n8 x
power_curr1();2 X- _0 E4 h4 A2 s- C1 `) q w
} a) \+ R7 @6 U% {6 Z0 A
}
5 a" M. Q u. T" g8 @3 A. n* Z/*********************************************************************************************************
2 d3 ]4 _, m/ b& c6 { End Of File
+ Y% U. g6 u+ U7 u6 i) @*********************************************************************************************************/9 b' L; a# c/ Q: z
" Y4 Z# U* H8 K* \) i7 K' u
1 Q$ J! K, |4 F5 a( v% H |
|