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

  • 大小: 31KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2021-06-07
  • 語言: 其他
  • 標簽: CC2350??5883??I2C??IIC??

資源簡介

參考網絡上基于51芯片的5883 I2C通信程序,CC2530需要每次在函數調整SDA和SCL前將端口定義一次,這是和51的最大不同,琢磨了好幾天才發現這個問題,終于能用了

資源截圖

代碼片段和文件信息

#include????
#include????
#define???uchar?unsigned?char
#define???uint??unsigned?int
typedef?unsigned?char?BYTE;

//使用的端口,請按照以下接線
#define SCL???P1_0??????//IIC時鐘引腳定義
#define SDA???P1_1?????//IIC數據引腳定義
#define?SDADirOut?P1DIR|=0x02;??????//xxxx1M01
#define?SDADirIn??P1DIR&=~0x02;
#define SlaveAddress???0x3C ??//定義器件5883在IIC總線中的從地址

char?display[]={“0123456789.“}; ?//將數字變成字符串的形式才能顯示 ?i對應diaplay[i]
char?Txdata[4];
char?Txdata1[2];

BYTE?BUF[8];?????????????????????????//接收數據緩存區??????
uchar?geshibaiqianwan;???????????//顯示變量
int??dis_data;???????????????????????//變量
//************

//************
void?init_uart();
void?delay(unsigned?int?k);
void?Init_HMC5883(void);????????????//初始化5883
void?conversion(uint?temp_data);
void?display_x();
void?display_y();
void?display_z();

void??Single_Write_HMC5883(uchar?REG_Addressuchar?REG_data);???//單個寫入數據
//uchar?Single_Read_HMC5883(uchar?REG_Address);???????????????????//單個讀取內部寄存器數據
void??Multiple_Read_HMC5883();??????????????????????????????????//連續的讀取內部寄存器數據
//以下是模擬iic使用函數-------------
void?Delayus(unsigned?int?usec);
void?HMC5883_Start();
void?HMC5883_Stop();
void?HMC5883_SendACK(char?ack);
char??HMC5883_RecvACK();
void?HMC5883_SendByte(BYTE?dat);
BYTE?HMC5883_RecvByte();
void?HMC5883_ReadPage();
void?HMC5883_WritePage();
//*********************************************
//串口初始化
//19200?bps?
void?init_uart()
{
????CLKCONCMD?&=?~0x40;??????????????????????????//設置系統時鐘源為32MHZ晶振
????while(CLKCONSTA?&?0x40);?????????????????????//等待晶振穩定
????CLKCONCMD?&=?~0x47;??????????????????????????//設置系統主時鐘頻率為32MHZ
???
??
????PERCFG?=?0x00; //位置1?P0口
????P0SEL?=?0x3c; //P0_2P0_3P0_4P0_5用作串口
????P2DIR?&=?~0XC0;?????????????????????????????//P0優先作為UART0

????U0CSR?|=?0x80; //UART方式
????U0GCR?|=?9; ???????
????U0BAUD?|=?59; //波特率設為19200
????UTX0IF?=?0;?????????????????????????????????//UART0?TX中斷標志初始置位0
}

//*********串口數據發送******************
void??SeriPushSend(char?*Dataint?len)
{
??int?j;
??for(j=0;j??{
????U0DBUF?=?*Data++;
????while(UTX0IF?==?0);
????UTX0IF?=?0;
??}
}
//*********************************************************
void?conversion(uint?temp_data)??
{??
????wan=temp_data/10000+0x30?;
????temp_data=temp_data%10000;???//取余運算
????qian=temp_data/1000+0x30?;
????temp_data=temp_data%1000;????//取余運算
????bai=temp_data/100+0x30???;
????temp_data=temp_data%100;?????//取余運算
????shi=temp_data/10+0x30????;
????temp_data=temp_data%10;??????//取余運算
????ge=temp_data+0x30;?
}

/*******************************/
#pragma?optimize=none
void?delay(unsigned?int?n)
{
uint?i;
for(i=0;i for(i=0;i for(i=0;i for(i=0;i for(i=0;i}


/**************************************
延時1微秒
不同的工作環境需要調整此函數,注意時鐘過快時需要修改
當改用1T的MCU時請調整此延時函數
**************************************/
#pragma?optimize=none
void?Delayus(unsigned?int?usec)
{
?????us

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2013-04-16?21:57??5883L-test\
?????目錄???????????0??2013-04-16?21:25??5883L-test\Debug\
?????目錄???????????0??2013-04-16?21:57??5883L-test\Debug\Exe\
?????文件???????20901??2013-04-16?21:57??5883L-test\Debug\Exe\HMC5883L-tese.d51
?????目錄???????????0??2013-04-17?14:32??5883L-test\Debug\List\
?????目錄???????????0??2013-04-16?21:59??5883L-test\Debug\Obj\
?????文件???????48480??2013-04-16?21:57??5883L-test\Debug\Obj\HMC5883.r51
?????文件?????????129??2013-04-16?21:57??5883L-test\Debug\Obj\HMC5883L-tese.pbd
?????文件????????9894??2013-04-16?21:49??5883L-test\HMC5883.c
?????文件????????2173??2013-04-16?21:59??5883L-test\HMC5883L-tese.dep
?????文件???????34306??2013-04-16?21:57??5883L-test\HMC5883L-tese.ewd
?????文件???????56247??2013-04-16?21:57??5883L-test\HMC5883L-tese.ewp
?????文件?????????167??2013-04-16?21:26??5883L-test\HMC5883L-test.eww
?????目錄???????????0??2013-04-16?21:27??5883L-test\settings\
?????文件????????1491??2013-04-16?21:58??5883L-test\settings\HMC5883L-tese.cspy.bat
?????文件????????3669??2013-04-16?21:59??5883L-test\settings\HMC5883L-tese.dbgdt
?????文件?????????895??2013-04-16?21:59??5883L-test\settings\HMC5883L-tese.dni
?????文件????????2687??2013-04-16?21:59??5883L-test\settings\HMC5883L-test.wsdt

評論

共有 條評論