RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于CC2530設(shè)計(jì)的自動(dòng)晾衣桿

DS小龍哥-嵌入式技術(shù) ? 來源:DS小龍哥-嵌入式技術(shù) ? 作者:DS小龍哥-嵌入式技 ? 2022-05-27 09:50 ? 次閱讀

?

1. 功能說明

現(xiàn)在都市的生活越來越忙,很多人都沒有時(shí)間和精力來管理一些細(xì)節(jié)上的東西,比如,在合適的陽光溫度時(shí)間內(nèi)晾曬衣服。針對(duì)這來問題開始研究,通過對(duì)智能晾衣架控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)的不斷探究,得到了比較好的設(shè)計(jì)思路。

使用CC2530單片機(jī)ADC接口采集雨滴傳感器模擬值,得到雨滴傳感器的雨滴測量值之后,與預(yù)先設(shè)置的閥值進(jìn)行對(duì)比,是否要打開或者收回晾衣桿,這個(gè)晾衣桿的伸縮采用步進(jìn)電機(jī)進(jìn)行模擬;并且還支持語音控制、手動(dòng)控制晾衣桿的伸縮。

image-20220111111849127

2. 硬件介紹

2.1 CC2530開發(fā)板

image-20220111112235136

2.2 雨滴傳感器

image-20220111112304127

2.3 步進(jìn)電機(jī)

image-20220111112335963

2.4 MR-LD3320語音識(shí)別模塊

image-20220111112450786

3. 源代碼

image-20220111113249381

3.1 雨滴傳感器數(shù)據(jù)采集

代碼下載鏈接: https://download.csdn.net/download/xiaolong1126626497/75318366

/*===================ADC初始化函數(shù)====================*/
void Init_ADC0()
{
 P0SEL |= 0x01;   //P0_0端口設(shè)置為外設(shè)功能
 P0DIR &= ~0x01;   //P0_0端口設(shè)置為輸入端口
 APCFG |= 0x01;   //P0_0作為模擬I/O使用
}
?
?
/*===================讀取ADC的數(shù)據(jù)====================*/
u16 Get_ADC0_Value()
{
 //存放采集的ADC數(shù)據(jù)
 u16 adc_dat=0;
 u8 dat[2];
 ADCIF = 0;
 //參考電壓選擇AVDD5引腳,256抽取率,AIN0通道0
 ADCCON3 = (0x80 | 0x10 | 0x00);
 while(!ADCIF);   //等待A/D轉(zhuǎn)換完成,
 dat[0]= ADCL;   //讀取ADC數(shù)據(jù)低位寄存器
 dat[1]= ADCH;   //讀取ADC數(shù)據(jù)高位寄存器
 
 adc_dat=dat[1]<<8|dat[0];
 
 ?return adc_dat;
}
?
// P0.6
void Init_ADC6(void)
{
 ? ?APCFG ?|=1<<6; ?//PCFG[7:0]選擇P0.7- P0.0作為模擬I/O
 ? ?P0SEL ?|= 0x01; 
 ? ?P0DIR ?&= ~0x01; ? 
 ? ?
 ? ?P0SEL |= (1<<6); ? ? ?//P0_6端口設(shè)置為外設(shè)功能
 ? ?P0DIR &= ~(1<<6); ? ? //P0_6端口設(shè)置為輸入端口
 ? ?APCFG |= 1<<6; ? ? ? ?//P0_6作為模擬I/O使用
}
?
?
//讀取光敏傳感器的值  P0.6
u16 Get_ADC6_Value( void )
{
 ?u16 reading = 0;
 ?
 ?/* Enable channel */
 ?ADCCFG |= 0x40;
 ?
 ?/* writing to this register starts the extra conversion */
 ?ADCCON3 = 0x86;// AVDD5 引腳  00: 64 抽取率(7 位ENOB)  0110: AIN6
 ?
 ?/* Wait for the conversion to be done */
 ?while (!(ADCCON1 & 0x80));
 ?
 ?/* Disable channel after done conversion */
 ?ADCCFG &= (0x40 ^ 0xFF); //按位異或。如1010^1111=0101(二進(jìn)制)
 ?
 ?/* Read the result */
 ?reading = ADCL;
 ?reading |= (u16) (ADCH << 8); 
 ?
 ?reading >>= 8;
 
 return (reading);
}
poYBAGDYdXCAWkKMAAAAK8RNs4s030.png

3.2 步進(jìn)電機(jī)控制代碼

typedef unsigned char uchar;
typedef unsigned int uint;
?
#define A1 P0_4 //定義步進(jìn)電機(jī)連接端口
#define B1 P0_5
#define C1 P0_6
#define D1 P0_7
?
uchar phasecw[4] ={0x80,0x40,0x20,0x10};//正轉(zhuǎn) 電機(jī)導(dǎo)通相序 D-C-B-A
uchar phaseccw[4]={0x10,0x20,0x40,0x80};//反轉(zhuǎn) 電機(jī)導(dǎo)通相序 A-B-C-D
?
void MotorData(uchar data)
{
 A1 = 1&(data>>4);
 B1 = 1&(data>>5);
 C1 = 1&(data>>6);
 D1 = 1&(data>>7);
}
?
//ms延時(shí)函數(shù)
void Delay_MS(uint x)
{
 uint i,j;
 for(i=0;i
poYBAGDYdXCAWkKMAAAAK8RNs4s030.png

3.3 串口初始化-接收語音識(shí)別指令

uint lenU1 = 0;
uchar tempRXU1;
#define MAXCHAR 81
uchar RecdataU1[MAXCHAR];
?
unsigned char dataRecv;
unsigned char Flag = 0;
?
void clearBuffU1(void)
{
 int j;
 for(j=0;j
poYBAGDYdXCAWkKMAAAAK8RNs4s030.png


?審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 傳感器
    +關(guān)注

    關(guān)注

    2550

    文章

    51035

    瀏覽量

    753063
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6035

    文章

    44554

    瀏覽量

    634617
  • CC2530
    +關(guān)注

    關(guān)注

    19

    文章

    221

    瀏覽量

    57999
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    CC2530 外部中斷配置步驟

    介紹CC2530 外部中斷配置步驟。
    的頭像 發(fā)表于 07-06 14:41 ?3058次閱讀
    <b class='flag-5'>CC2530</b> 外部中斷配置步驟

    Cc2530

    CC2530
    三分溫柔
    發(fā)布于 :2022年05月31日 21:12:52

    CC2530應(yīng)用電路

    CC2530應(yīng)用電路 Component Description Va
    發(fā)表于 06-29 08:09 ?5528次閱讀
    <b class='flag-5'>CC2530</b>應(yīng)用電路

    基于CC2530的SDHC卡讀寫設(shè)計(jì)

    提出了將SDHC卡作為CC2530的外部存儲(chǔ)設(shè)備實(shí)現(xiàn)數(shù)據(jù)存儲(chǔ)的方法。SDHC卡具有體積小、存儲(chǔ)容量大的特點(diǎn),通過CC2530組建的無線傳感網(wǎng)絡(luò)適用于工業(yè)監(jiān)測,而將SDHC卡與CC2530相結(jié)合
    發(fā)表于 05-02 14:28 ?3609次閱讀
    基于<b class='flag-5'>CC2530</b>的SDHC卡讀寫設(shè)計(jì)

    基于CC2530芯片_zigbee基礎(chǔ)實(shí)驗(yàn)

    zigbee基礎(chǔ)實(shí)驗(yàn),基于CC2530芯片
    發(fā)表于 12-11 10:48 ?49次下載

    cc2530底板

    CC2530的核心板原理圖和詳細(xì)底板的PCB,包括重要外設(shè)的PCB
    發(fā)表于 06-20 17:48 ?0次下載

    cc2530的PWM實(shí)現(xiàn)

    CC2530 結(jié)合了領(lǐng)先的RF 收發(fā)器的優(yōu)良性能,業(yè)界標(biāo)準(zhǔn)的增強(qiáng)型8051 CPU,系統(tǒng)內(nèi)可編程閃存,8-KB RAM 和許多其它強(qiáng)大的功能。CC2530 有四種不同的閃存版本:CC2530F32/64/128/256,分別具有
    發(fā)表于 11-07 18:43 ?4009次閱讀
    <b class='flag-5'>cc2530</b>的PWM實(shí)現(xiàn)

    cc2530芯片有哪些功能

    CC2530是專門針對(duì)IEEE 802.15.4和Zigbee應(yīng)用的單芯片解決方案,經(jīng)濟(jì)且低功耗。 CC2530有四種不同的版本:CC2530-F32 / 64 / 128 / 256。分別帶有
    發(fā)表于 11-08 11:05 ?2.3w次閱讀

    CC2530英文數(shù)據(jù)手冊(cè)

    CC2530英文數(shù)據(jù)手冊(cè)
    發(fā)表于 12-02 11:06 ?29次下載
    <b class='flag-5'>CC2530</b>英文數(shù)據(jù)手冊(cè)

    介紹CC2530性能及主要應(yīng)用

    CC2530 片上系統(tǒng)視頻
    的頭像 發(fā)表于 06-12 06:34 ?1w次閱讀

    CC2530的數(shù)據(jù)手冊(cè)和CC2530的應(yīng)用手冊(cè)免費(fèi)下載

    CC2530是一個(gè)真正的系統(tǒng)芯片(SOC)解決方案,適用于IEEE 802.15.4、ZigBee和RF4CE應(yīng)用。它能夠以非常低的總物料清單成本構(gòu)建強(qiáng)健的網(wǎng)絡(luò)節(jié)點(diǎn)。CC2530將領(lǐng)先的射頻收發(fā)器
    發(fā)表于 01-18 08:00 ?126次下載
    <b class='flag-5'>CC2530</b>的數(shù)據(jù)手冊(cè)和<b class='flag-5'>CC2530</b>的應(yīng)用手冊(cè)免費(fèi)下載

    CC2530芯片的基本特性和CC2530無線模塊的設(shè)計(jì)

    本文介紹了CC2530芯片的基本特性,論述了以CC2530芯片為核心的無線通信模塊的硬件設(shè)計(jì)和調(diào)試軟件設(shè)計(jì),在介紹設(shè)計(jì)規(guī)范和模塊結(jié)構(gòu)的基礎(chǔ)上,采用TI公司的CC2530芯片作為主控制芯片設(shè)計(jì)出具
    發(fā)表于 02-11 08:00 ?97次下載
    <b class='flag-5'>CC2530</b>芯片的基本特性和<b class='flag-5'>CC2530</b>無線模塊的設(shè)計(jì)

    CC2530驅(qū)動(dòng)OLED源代碼

    CC2530驅(qū)動(dòng)OLED源代碼
    發(fā)表于 09-27 14:48 ?2次下載

    CC2530 芯片介紹

    簡介 CC2530 結(jié)合了領(lǐng)先的RF 收發(fā)器的優(yōu)良性能,業(yè)界標(biāo)準(zhǔn)的增強(qiáng)型8051 CPU,系統(tǒng)內(nèi)可編程閃存,8-KB RAM 和許多其它強(qiáng)大的功能。CC2530 有四種不同的閃存版本
    發(fā)表于 01-03 11:00 ?3857次閱讀

    cc2530繼電器模塊使用

    CC2530繼電器模塊是一款基于TI公司的低功耗無線通信芯片CC2530的繼電器應(yīng)用模塊。它能實(shí)現(xiàn)物聯(lián)網(wǎng)設(shè)備之間的遠(yuǎn)程控制,廣泛應(yīng)用于家庭自動(dòng)化、工業(yè)控制、智能農(nóng)業(yè)等領(lǐng)域。本文將詳細(xì)介紹CC2
    的頭像 發(fā)表于 12-21 14:47 ?1512次閱讀
    RM新时代网站-首页