資源簡介
CS5532程序開發,適用于電子測量和工業控制-CS5532 program development, apply to electronic measurement and industrial control

代碼片段和文件信息
#include?
//#include?
#include?
//#include?
//#include?“common.h“
#include?“cs5532.h“
//#include?“sLcd.h“
#include?“LCD_12864.h“
#include?“LED.h“
#define?nop()?asm?volatile(“nop“::)
#define?uint?unsigned?int?
#define?uchar?unsigned?char?
unsigned?long?debug_register;
void?delay20ms()??//20毫秒延時函數?
{ uint?ij=0;
? ?for?(i=0;i<20;i++);
? ?for?(j=0;j<2282;j++);
}
//------------------------------------------------------------------------------------------
static?void?dlyus(unsigned?int?len)
{
?do{len--;}while(len>0);
}
//------------------------------------------------------------------------------------------
//寫命令函數
//cmd是相應的命令
void?CsCmd(unsigned?char?cmd)
{
?unsigned?char?i=8;
?
?CSSCK_L;
?dlyus(CSDLY*10);
?CSCS_L;
?dlyus(CSDLY);
?
??for(;i>0;i--)
???{
??if(cmd&0x80)??CSSDI_H;
????else????????CSSDI_L;
dlyus(CSDLY);
CSSCK_H;
dlyus(CSDLY);
CSSCK_L;
cmd<<=1;
???}
?CSCS_L;
?CSSCK_L;?
?CSSDI_L;
?
}
//------------------------------------------------------------------------------------------
//寫寄存器函數
//cmd為相應的命令data是寫入的值
static?void?CsWrReg(unsigned?char?cmdunsigned?long?data)
{
?unsigned?char?i=8;
?
?CSSCK_L;
?dlyus(CSDLY*10);
?CSCS_L;
?
??for(;i>0;i--)
????{
??if(cmd&0x80)??CSSDI_H;
????else????????CSSDI_L;
dlyus(CSDLY*2);
CSSCK_H;
dlyus(CSDLY*2);
CSSCK_L;
cmd<<=1;
}
??dlyus(CSDLY);
??for(i=32;i>0;i--)
????{
??if(data&0x80000000)??CSSDI_H;
????else???????????????CSSDI_L;
dlyus(CSDLY*2);
CSSCK_H;
dlyus(CSDLY*2);
CSSCK_L;
data<<=1;
}
?CSCS_L;
?CSSCK_L;
?CSSDI_L;
}
//------------------------------------------------------------------------------------------
//讀寄存器函數
//cmd為相關命令
//返回相應寄存器的值
unsigned?long?CsRdReg(unsigned?char?cmd)
{
?unsigned?char?i=8;
?unsigned?long?reg=0;
?
?dlyus(CSDLY);
?CSSCK_L;
?CSCS_L;
?
?if(cmd)
?{?
??for(;i>0;i--)
????{
??if(cmd&0x80)??CSSDI_H;
????else????????CSSDI_L;
dlyus(CSDLY);
CSSCK_H;
dlyus(CSDLY);
CSSCK_L;
cmd<<=1;
}
?}
??CSSDI_L;
??for(i=31;i>0;i--)
????{
?????dlyus(CSDLY);
?CSSCK_H;
?dlyus(CSDLY);
?if(CSPIN&(1< ?????CSSCK_L;
?????reg<<=1;?
????}
?
?CSSCK_L;
?dlyus(CSDLY);
?CSSCK_H;
?CSCS_L;
?CSSCK_L;
?CSSDI_L;
?
?return?reg;
}
//------------------------------------------------------------------------------------------
//單次AD轉換的函數
//csr為相應的通道只能是0或者1
//返回本次轉換的結果如果返回-1說明AD轉換超時
unsigned?long?CsSgConv(unsigned?char?csr)
{
?unsigned?long?res=0;
?unsigned?int?timeout=65532;
?
?csr<<=3;
?
?CsCmd(0x80|csr);
?while((CSPIN&(1<0))?timeout--;
?if(timeout<=0)?return?-1;
?dlyus(CSDLY);
?CsCmd(0);
?res=CsRdReg(0x0);
?
?
?//CsCmd(0xc0);??????????????//continuously
?CSSCK_L;
?CSSDI_L;
?CSCS_L;
?return?res;
}
//-------------------------------------------------------------------
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄??????????0??2009-07-12?12:02??cs5532
?????文件????????606??2009-07-12?01:00??cs5532\ch595.h
?????文件???????5622??2009-07-12?11:43??cs5532\CS5532.c
?????文件??????13058??2009-07-12?12:02??cs5532\CS5532.cof
?????文件???????8155??2009-07-12?12:02??cs5532\CS5532.dbg
?????文件????????358??2009-07-12?12:02??cs5532\CS5532.dp2
?????文件????????886??2009-07-12?12:02??cs5532\cs5532.h
?????文件??????11420??2009-07-12?12:02??cs5532\CS5532.hex
?????文件?????112867??2009-07-12?12:02??cs5532\CS5532.lis
?????文件?????????11??2009-07-12?12:02??cs5532\CS5532.lk
?????文件??????78064??2009-07-12?12:02??cs5532\CS5532.lst
?????文件????????887??2009-07-12?12:02??cs5532\CS5532.mak
?????文件???????4190??2009-07-12?12:02??cs5532\CS5532.mp
?????文件??????30448??2009-07-12?12:02??cs5532\CS5532.o
?????文件???????1033??2009-07-12?12:02??cs5532\cs5532.prj
?????文件??????47337??2009-07-12?12:02??cs5532\CS5532.s
?????文件?????????73??2009-07-12?11:28??cs5532\CS5532.SRC
?????文件???????5622??2009-07-12?11:42??cs5532\CS5532._c
?????文件????????880??2009-07-11?19:47??cs5532\cs5532._h
?????文件???????3810??2009-07-12?12:00??cs5532\CS5532_cof.aps
?????文件????????358??2009-07-12?11:59??cs5532\cs5532_cof.aws
?????文件????????439??2008-10-29?19:02??cs5532\encoder.h
?????文件???????3482??2009-07-12?11:09??cs5532\LCD_12864.h
?????文件???????1864??2009-07-12?11:27??cs5532\LED.h
-----------?---------??----------?-----??----
???????????????331470????????????????????24
- 上一篇:如何用C語言編寫步進電機驅動程序
- 下一篇:CAN總線源代碼c語言
評論
共有 條評論