91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 5KB
    文件類型: .c
    金幣: 1
    下載: 0 次
    發布日期: 2021-06-14
  • 語言: 其他
  • 標簽: 51單片機??PCF8591??

資源簡介

51單片機PCF8591例子,AD和DA集成到一個芯片上,包括了AD和DA的讀寫程序

資源截圖

代碼片段和文件信息

/**********************************************************************************
*??標題:???????*************?DA-AD試驗*******************?????????????????????????*
* ??*
*???1.通過本例程了解并掌握AD-DA轉換芯片的基本原理和使用? ??*
*???2.了解掌握I2C總線接口的工作原理及一般編程方法。 ??*
*??? ??*
*????連接方法:JP8?(P1)與J12用跳線連接? ??????????*
*???? ??*
*?通過改變學習板上的2個電位器對應的2段模擬輸入,實現模擬輸入,學員觀察數碼管的數字變化情況
*?通過改D[4]的值,實現模擬輸出,學員觀察學習板上DA處LED的亮度變化 ??*
* ??* ??*
*?注意:I2C驅動程序只能在12T模式下工作???6T模式自己修改相應時序???????????????????*????????????????? ??????????????????????????????????????????????????????????????*
*?請學員認真消化本例程,懂得AD-DA?在C語言中的操作應用??????????????????????? ??*
***********************************************************************************/

#include
#include?

#define??PCF8591?0x90????//PCF8591?地址


//else?IO
sbit????LS138A=P2^2;??
sbit????LS138B=P2^3;
sbit????LS138C=P2^4;??

//此表為?LED?的字模?共陰數碼管?0-9??-?
unsigned?char?code?Disp_Tab[]?=?{0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f};?

unsigned?char?AD_CHANNEL;
unsigned?long?xdata??LedOut[8];
unsigned?int??D[32];
?

/*******************************************************************
DAC?變換?轉化函數???????????????
*******************************************************************/
bit?DACconversion(unsigned?char?slaunsigned?char?c??unsigned?char?Val)
{
???Start_I2c();??????????????//啟動總線
???SendByte(sla);????????????//發送器件地址
???if(ack==0)return(0);
???SendByte(c);??????????????//發送控制字節
???if(ack==0)return(0);
???SendByte(Val);????????????//發送DAC的數值??
???if(ack==0)return(0);
???Stop_I2c();???????????????//結束總線
???return(1);
}

/*******************************************************************
ADC發送字節[命令]數據函數???????????????
*******************************************************************/
bit?ISendByte(unsigned?char?slaunsigned?char?c)
{
???Start_I2c();??????????????//啟動總線
???SendByte(sla);????????????//發送器件地址
???if(ack==0)return(0);
???SendByte(c);??????????????//發送數據
???if(ack==0)return(0);
???Stop_I2c();???????????????//結束總線
???return(1);
}

/*****************************************************************

評論

共有 條評論