|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
X41 1to4DFU Fixture PCB 跟 源程序
' y) p# e3 x/ d( A3 O9 g% ]! @/ G//============================================
1 r! d, _+ ^5 I8 t6 C//=============程序信息=======================
! W; G. [7 l9 D/ s4 u1 }/******************************************4 }4 \/ G7 b3 I H
1、作者:sunshine tang
7 [% w4 G t4 V5 q4、产品名称:X41 1to4DFU Fixture
1 j2 T7 c3 R2 `! x, b* F5、版本:V1.00
7 H0 a, }% ]$ y6、程序名称:主程序
6 ?4 _9 A1 @) ^( g. z3 {+ M7 K7、功能描述:控制4路4.0V的电源通断,检测4路电源的过流,
5 o. q2 j8 y q0 W 两路按键控制,4路PASS指示灯,4路FAIL指示灯,2路气缸. x ?0 @- [+ H$ H; D B# r- @" U
控制,主板开机模式控制;通信波特率:115200,UART1,
9 z6 w+ [9 c/ @) X+ p: P0 ^1 E1 A/ ` 接收数据结束符为\r\n,发送数据结束符为\r\n@_@。9 }* n7 v! d5 N& ~( O- J# x- `
8、CPU类型:LPC1768
/ R# v' `# U; r% ^! g( K*******************************************/0 W( A8 w) ]5 j+ S" Z; t
6 C' U1 Y4 K9 D4 p#include "..\config.h"0 B& S7 h( e* E3 T* Q0 @: [- b
#include "..\time.h"
8 B6 I2 F6 @. _, e9 Z//=============================- Y! u( M. i8 X" ], [
extern char GucRcvBuf[50] ;
~2 d8 c% D! h( v) P. a3 hextern INT8U GulNum;0 Y3 N* I W. W }6 e- B; [
extern INT8U GucRcvNew;, t; s3 X9 Z. v; |% r* @% [
extern INT8U uflag;
$ {6 m& R. j0 B" G8 ^# J- _, pextern INT8U bflag;
2 o1 `( I9 n9 K+ |, B, ]extern INT32U time0v; V' m& h( G; P* c
" c! h3 V7 B E* X- @8 p
//=================================( T$ ?% `& ]1 h- h1 U
int main (void)
$ ^1 Q5 l7 d0 d1 V3 i6 O{, Z4 T& q; h0 m6 W9 L- j/ X S
- N5 @+ U) J3 ?) \, X/ @! d targetInit(); //初始化目标板,切勿删除
9 u. W4 l y- x# }3 r pinInit(); //引脚初始化 1 k5 w- x4 N* H; Z& c
PINMODE0=0x0000;//使用片内上拉, ]6 d+ h4 C6 N J8 ]% o! c
) e2 {' `, @9 E
//DFU初始化输出1.8V高电平 2012.4.62 Y0 g+ X! | E- d& d
FIO1DIR |= (1<<16); FIO1CLR = (1<<16);
8 V1 V; i2 s1 ^6 ?4 ^) p FIO1DIR |= (1<<9); FIO1CLR = (1<<9);
% m+ _$ f& _; C FIO1DIR |= (1<<8); FIO1CLR = (1<<8);$ p3 Q9 e! T/ O2 P1 d5 u l, y
FIO1DIR |= (1<<4); FIO1CLR = (1<<4);$ N) x% F$ F1 j7 a \8 }- t
: j* L; G2 I2 \0 L. H" D
GucRcvNew = 0;
. z: g* N/ i+ B) S" ] uartInit (); //串口初始化
& O6 l, ?8 n" |7 c zyIsrSet(NVIC_UART1,(unsigned long)uart1Isr,PRIO_ONE);
4 K$ \: [7 X* Q" E9 y timer0Init ();
' m. ^# Y0 e; R$ K, `5 H) \ r88k7_init(); 5 ~" Z" K- Q1 ]
fiature_init(); $ m& @* A4 b n) E% C
while (1) b5 K5 r+ F- n! P4 t
{
5 |2 m) n) t% A* i. R2 ~ if (GucRcvNew == 1){ //判断是否有新数据
0 ^! V+ Q q) B( U8 c GucRcvNew = 0; // 清除标志 / F m1 _0 j; y+ u$ d$ _' \
if(uflag==1)8 Z9 i a6 D' F+ \4 L
{
* @: ^3 V3 {1 \ check(GucRcvBuf);
, d- D8 C' S" ]! j- [ GulNum=0;
( v' t/ S8 \8 M$ n( h uflag=0;. p2 f9 ?/ q' ^$ [7 @! u
}8 s2 x1 R- S3 v7 m7 n& S
}
! r9 I0 `7 x M. W+ }7 @2 b& V* T if(bflag==1)
( g3 G ~8 Y, h' @ {
7 d& F( U' Y5 F8 f. k- D# ? uart1SendByte ('\b');
8 t; B7 @: {( Z& P7 Q* [% N q uart1SendByte (' ');
9 V6 }4 K1 y+ q+ ?8 ]+ L! u uart1SendByte ('\b');5 H% k6 `- M$ v4 P/ C' y
bflag=0;
j: Y3 ^- N7 b7 C \ }' F, ?; g$ v1 B
StartKey();0 J9 \" m0 p. k0 D. z( O; T
power_curr1();3 N( K& w, }" V) ~% [* a
}
" }* k4 n/ m7 \! l}% \$ z, } T3 _4 B$ r, L" V
/*********************************************************************************************************9 ^( \4 ?; F# Y* H1 ~# i
End Of File1 R/ G# p8 O& k4 E6 P6 R
*********************************************************************************************************/
* }5 z4 z) j& z ~- x" R& f0 O! ~0 R
( n4 i, p& R7 G2 D6 x |
|