驱动程序——MCP3208——基于STM32F103

 

最近使用了MCP3208这款芯片,附上驱动代码:

u16 mcp_getAD(u8 channel)
{
u8 i=0;

//u16 temp= ((u16)channel|0x0018)<<4;
u16 temp= 0x0F80;
//0000 11 11 1 000 0000
u16 resualt=0;
//u8 temp1=0x06|(channel>>2);
//u8 temp2=channel<<6;
//temp=
GPIO_ResetBits(mcp_Port,mcp_CS);//CS=0
//

GPIO_ResetBits(mcp_Port,mcp_CLK);//CLK=0
delay_us(20);


for(i=0;i<10;i++)
{
GPIO_SetBits(mcp_Port,mcp_CLK);//CLK=1
delay_us(20);
GPIO_ResetBits(mcp_Port,mcp_CLK);//CLK=0
if(temp&0x8000)
GPIO_SetBits(mcp_Port,mcp_DOUT);//DOUT=1
else
GPIO_ResetBits(mcp_Port,mcp_DOUT);//DOUT=0
delay_us(20);
temp<<=1;

}

GPIO_SetBits(mcp_Port,mcp_CLK);//CLK=1
delay_us(20);
GPIO_ResetBits(mcp_Port,mcp_CLK);//CLK=0
delay_us(20);
GPIO_SetBits(mcp_Port,mcp_CLK);//CLK=1
delay_us(20

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值