娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2024年10月23日(星期三)

正在發生

2019年10月23日 | ARM基本知識

發布者:京玩兒 來源: 51hei關鍵字:ARM  基本知識  編譯 手機看文章 掃描二維碼
隨時隨地手機看文章

除了正常的保存之外,在編譯無誤后,選擇另存為相同名稱的.h文件,將點h文件中的main函數名稱修改成其他名稱,如xmain,或main1等,則新項目就可以調用原項目中的函數!

一、項目1先編寫LCD1602,編譯無錯誤后再將LCD1602.c另存為LCD1602.h,將LCD1602.h中的main()函數文件改為main0()

#include

#include

sbit rs=P2^0;

sbit rw=P2^1;

sbit e=P2^2;

void delay(unsigned char us)

{

  while(us--);

}

void w1602(bit r,unsigned char dat)

{

  rs=r;

rw=0;

e=0;

P1=dat;

delay(3);

e=1;

delay(7);

e=0;

}

void init1602()

{

    w1602(0,0x38);

 w1602(0,0x06);

 w1602(0,0x0c);

 w1602(0,0x01);

}

void main()

{

  char i;

init1602();

w1602(0,0x80);

for(i=0;i<10;i++)

 {

        

 w1602(1,0x30+i);

    }

二、建立DS1302萬年歷項目DS1302

#include"reg52.h"

#include"intrins.h"    //注意上面項目作為頭文件調入該項目

#include"LCD1602.h"

sbit rst=P2^3;

sbit sclk=P2^4;

sbit Dio=P2^5;

sbit A7=ACC^7;

sbit B0=B^0;

void w1302(unsigned char addr,dat)

{

  char i;

rst=0;

sclk=0;

rst=1;

for(i=0;i<8;i++)

{

B=addr>>i;     

sclk=0;

Dio=B0;

sclk=1; 

   }

for(i=0;i<8;i++)

{

     B=dat>>i;     

sclk=0;

Dio=B0;

sclk=1;

   }

rst=0;

}

unsigned char r1302(unsigned char addr)

{

  char i;

rst=0;

sclk=0;

_nop_();

rst=1;

for(i=0;i<8;i++)

{

     B=addr>>i;     

sclk=0;

Dio=B0;

sclk=1;

   } 

for(i=0;i<8;i++)

{     

A7=Dio;

sclk=1;

ACC=ACC>>1;

sclk=0; 

   }

rst=0;

return(ACC);

}

void main()

{

init1602();            //上以項目中的函數可以無條件調用

w1302(0x80,0x33);

while(1)

{

    w1602(0,0x80);

w1602(1,0x30+((r1302(0x81)>>4) & 0x0f));//調用

w1602(1,0x30+(r1302(0x81) & 0x0f));//調用

  }

三、建立溫度DS18B20程序項目

#include"reg52.h"

#include"intrins.h"

#include"LCD1602.h"

sbit ds18b20=P2^6;

unsigned char dd[]="date:";

unsigned char dd1[]="temp:";

unsigned char temp1,temp2,TT,ttT;


bit Reset(void)

{

   bit k;

   ds18b20=0;   

   delay(145);     

   ds18b20=1;      

   delay(10);   

   k=ds18b20; 

   delay(90);

   return k;

}

//---------------------------

unsigned char ReadByte(void)

{

   unsigned char j,buf=0;

   for(j=0;j<8;j++)

   {

        buf=buf>>1;

        ds18b20=0; 

        _nop_(); 

        _nop_();

        ds18b20=1; 

        _nop_(); 

        _nop_();

        _nop_();

        _nop_();

        _nop_();

        _nop_();

        if(ds18b20==1)

            buf|=0x80;

        delay(8);

                   

     }

   return buf;

}

//-------------------------------

void WriteByte(unsigned char dat)

{

    unsigned char j;

    for(j=0;j<8;j++)

     {             

       if(dat&0x01)

         {      

            ds18b20=0; 

            _nop_();

            _nop_();

            ds18b20=1;

            delay(10);

         }

      else 

         {            

            ds18b20=0;

            delay(10);

            ds18b20=1; 

            _nop_();

            _nop_();

         }

    dat=dat>>1;

 }

}

//------------------

bit Convert(void)

{    

 if(Reset()==0)

     {  

        WriteByte(0xcc);

        WriteByte(0x44);

        return 1; 

     }

 else   

     {   

        return 0; 

     }

}

//---------------------------------------

void ReadFlash(void)

{    

 unsigned char Lsb,Msb; 

    if(Reset()==0)

      {

        WriteByte(0xcc);

        WriteByte(0xbe);

        Lsb=ReadByte();

        Msb=ReadByte();

        temp1=Lsb;//L 8bit

        temp2=Msb;//H 8bit

      } 

     else

      {

        temp1=0;

        temp2=0;

      }

}

void disp_temp(unsigned char addr)

{

char i,m;

   

         if(Convert()==1)      

              {      

                ReadFlash();               

                TT=(temp2<<4)|(temp1>>4)&0x7F;

if((TT & 0x80)==0x80)

                     ttT=(~TT & 0x3F)+1;

else

     ttT=TT;

              }

m=20;

while(m--)

{

w1602(0,addr);

for(i=0;i<5;i++)

    w1602(1,dd1[i]);

if((TT & 0x80)==0x80)   //-

    {

       if(TT==0x80)

{

   ttT=128;

    w1602(1,0x20);

                                            w1602(1,0X30+(ttT/100));

    w1602(1,0x30+(ttT%100)/10);

     w1602(1,0x30+ttT%10);

                                         }

else

{

    w1602(1,0x20);

    w1602(1,0x2d);

                    if(ttT/10>0)

w1602(1,0x30+ttT/10);

    else

        w1602(1,0x20);

     w1602(1,0x30+ttT%10);

}

}

  else               //+

                                           {

w1602(1,0x20);

  if(ttT/100>0)

{

       w1602(1,0X30+(ttT/100));

w1602(1,0x30+(ttT%100)/10);

w1602(1,0x30+(ttT%10));

}

   else

{

if((ttT%100)/10>0)

{

w1602(1,0x30+(ttT%100)/10);

w1602(1,0x30+ttT%10);

}

else    

   w1602(1,0x30+ttT%10); }       

              }

                                              w1602(1,0x22);

w1602(1,0x43);

w1602(1,0x20);

w1602(1,0x20);

}

}

void main()

{

init1602();

while(1)

{

        disp_temp(0xc3);

       }

}

 四、建立綜合項目DS1302_18B20

#include"reg52.h"

#include"intrins.h"

#include"DS1302.h"

sbit ds18b20=P2^6;


unsigned char dd[]="date:";

unsigned char dd1[]="temp:";

unsigned char temp1,temp2,TT,ttT;


bit Reset(void)

{

   bit k;

   ds18b20=0;   

   delay(145);     

   ds18b20=1;      

   delay(10);   

   k=ds18b20; 

   delay(90);

   return k;

}

//---------------------------

unsigned char ReadByte(void)

{

   unsigned char j,buf=0;

   for(j=0;j<8;j++)

   {

        buf=buf>>1;

        ds18b20=0; 

        _nop_(); 

        _nop_();

        ds18b20=1; 

        _nop_(); 

        _nop_();

        _nop_();

        _nop_();

        _nop_();

        _nop_();

        if(ds18b20==1)

            buf|=0x80;

        delay(8);

                   

     }

   return buf;

}

//-------------------------------

void WriteByte(unsigned char dat)

{

    unsigned char j;

    for(j=0;j<8;j++)

     {             

       if(dat&0x01)

         {      

            ds18b20=0; 

            _nop_();

            _nop_();

            ds18b20=1;

            delay(10);

         }

      else 

         {            

            ds18b20=0;

            delay(10);

            ds18b20=1; 

            _nop_();

[1] [2]
關鍵字:ARM  基本知識  編譯 引用地址:ARM基本知識

上一篇:linux嵌入式ARM-linux基礎題目
下一篇:讓ADS與KEIL共存 Warning: L6373W: libattrs.map file not found

推薦閱讀

大陸過去在8.5代廠投資高峰時,具有8.5代廠量產經驗的臺灣面板技術人才成為當紅炸子雞,是大陸面板廠挖角首選。不過如今投資重點轉向10.5代廠和AMOLED面板廠,大陸面板廠轉而鎖定具有AMOLED量產經驗的韓國技術人才挖角,祭出3~4倍的薪資向韓國人才招手。  面板人才跳槽大陸廠商,韓檢方起訴技術泄密  據韓國媒體報道稱,韓國拳頭產業半導體、顯示器等...
51單片機ADC0809 數碼管 顯示光照強度 源碼及仿真文件請自行下載仿真原理圖如下單片機源碼如下:#include <reg52.h> #include<intrins.h>#include<absacc.h> #define uchar unsigned char#define uint unsigned int #define COM0808 XBYTE[0XEFF8] char code dis_code[]={0xc0,0xf9,0xa4,0xb0, 0x99,0x9...
“今年以來,針對車聯網企業的惡意攻擊達到280余萬次。”“假如20萬輛汽車同時被黑客控制,車輛將變成攻擊人類的武器,帶來的災難無法想象。”這并非危言聳聽,在汽車智能網聯功能越發強大的同時,汽車網絡信息安全問題也逐漸浮出水面。新技術的應用猶如一把雙刃劍,豐富汽車生態的同時,也帶來安全風險。10月20-22日,第三屆中國汽車安全與召回技術論壇在...
廣告摘要聲明廣告撰文 | 歌者“2021年,可以視為激光雷達上車的元年,而2025年將成為激光雷達應用的分水嶺,隨著技術的進一步成熟與應用成本的持續下降,2025年后激光雷達將成為自動駕駛應用的主雷達,占據市場主流。?武漢天眸光電科技有限公司(以下簡稱:天眸光電)總經理程剛如此判斷道。事實上,近幾年激光雷達的發展可謂是如火如荼且前景可期,公...

史海拾趣

問答坊 | AI 解惑

F題

本帖最后由 paulhyde 于 2014-9-15 09:00 編輯 數字幅頻均衡怎么設計啊  …

查看全部問答∨

【藏書閣】上海交大精品課件

包括: rc暫態響應 單管放大實驗 實驗課件 147頁 84.3M PPT版: …

查看全部問答∨

求幫寫一個VGA彩色信號控制器設計

一.設計要求: 要求用一片fpga ,vga 顯示器和實驗箱中的vga接口共同實現多種彩色的顯示。 其功能如下: (1) 根據vga工業標準,產生正確的行場掃描信號; (2) 有顯示控制鍵,每按動一次按鍵,輸出全屏改變一種顏色,循環顯示顏色分別為: ...…

查看全部問答∨

單位要我搞個改進,,思路有了,,哪個有好辦法,,近來交流下,,,十萬著急

現在生產線測試產品的工具又落后又不好看,,要升級,,我負責硬件和軟件。。。   要測試  1.  編碼  2.  總線電流  3.  24V電源電流  4.  故障報警等等參數,,,有沒有朋友有好建議。。我方法有 ...…

查看全部問答∨

在WIN CE下用WIN 32顯示BMP圖片!

我是個新手。。。想在WIN CE下用WIN 32顯示BMP圖片!。。。不用MFC。。。 這個應該要怎么實現啊!!! 能不能給個例子看看。。。先謝謝啦 …

查看全部問答∨

求助ARM

有做arm方面的嗎,我們公司剛用ARM,公司做了一塊板子,用到了AT91RM9200,這款芯片片內沒有flash,我們外擴了個三個flash,現在ulink能識別到內核,但程序下不進去,各位有什么建議的話麻煩說一下,謝謝。 我沒有可用分了,請原諒。…

查看全部問答∨

用c52生成UDP效驗碼的問題

UDP效驗碼的格式是每16為進行反碼求和運算,有進位則結果再加上1,最后得到一個16位的效驗碼。我的問題是這16位求和的具體方向是怎樣的,最后按什么順序放在16的效驗碼字段里? 比如:設cr為16效驗碼初值為0(類型unsigned int),數據包中的16位 ...…

查看全部問答∨

友善之臂 mini2440 + 3.5"LCD 套餐 300轉讓!

本帖最后由 ddllxxrr 于 2016-1-7 17:10 編輯 自降100哈,遇到高興的事了,嘿嘿 300元轉讓友善之臂 mini2440 + 3.5"LCD 套餐 全新的,買來后就沒有怎么用過,詳細介紹請看: 有意的請聯系我,賣價300元,東西絕對全新的 QQ 653338192 另 ...…

查看全部問答∨

智能車飛思卡爾MC9S12DG128開發板 個人閑置

智能車飛思卡爾MC9S12DG128開發板 個人閑置                        本人為在校學生,曾參加過2009年、2010年飛思卡爾智能車競賽。由于現在正在備戰考研。決定出售全套 智能車飛思卡 ...…

查看全部問答∨

MC9S12XS128MAA,編寫兩路速度測試,在液晶屏上同時顯示這倆路速度值

程序整體思路 K1鍵按下,一只led燈開始閃爍,同時啟動測試速度程序,能夠在液晶屏上顯示所測速度,如果速度在20km/h-60km/h之間,則從相應口輸出10hz方波脈沖,在檢測脈沖儀上顯示 測試速度具體思路(兩路速度測試,兩路速度顯示) 由V=(2∏R*f) ...…

查看全部問答∨
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 双桥区| 湘潭县| 民县| 库车县| 峨边| 夏河县| 吉水县| 周口市| 新郑市| 阜宁县| 赤城县| 西乌| 高要市| 洞头县| 五台县| 马公市| 驻马店市| 鞍山市| 墨玉县| 雷州市| 同江市| 什邡市| 霍城县| 卓资县| 利津县| 罗平县| 北辰区| 抚宁县| 大兴区| 如皋市| 龙川县| 盐边县| 华阴市| 东莞市| 周口市| 无棣县| 吉安市| 彭山县| 弥渡县| 德江县| 边坝县|