c語言單片機數據傳送,單片機數據傳送原理圖

本文目錄一覽:

單片機串口發送數據用c語言編寫,放在主函數里就沒問題,單提出來寫成子函數,發送數據就不完整?

put_char(LEN1);數據長度

put_string(table1);數據

這兩條語句編譯能通過嗎?後面的漢字不加//,這就不是注釋。

單片機程序:外部RAM與內部RAM數據傳送程序(彙編、和C語言)

#includeat89x51.h

#includeabsacc.h

void main(void) //C

{

unsigned char var;

var=XBYTE[0x2000];

XBYTE[0x2000]=var;

while(1);

}

org 00h ;彙編

sjmp main

org 40h

main:mov dptr,#2000h

movx a,@dptr

movx @dptr,a

sjmp $

end

我寫的兩個都是用在51上的

51加#includeat89x51.h

52加#includeat89x52.h

彙編不變。

單片機C語言數組傳送,

加按鍵抬起檢測就可以了

if(temp!=0xf0)

{

temp=P3;

while(temp!=0x0f)//按鍵不抬起,一直讀P3

{

temp=P3;

temp=temp0x0f;

}

switch(temp)

{

case 0xee:……….

我覺得還可以更簡單 while(P3!=0xfe);

單片機C語言函數參數傳遞問題

因為str的定義為unsigned char型數組,作為變數的str是指向這個數組首地址的指針,所以主程序引用str時是告訴子程序傳入數組首地址;對於子程序必須知道這是一個數組首指針,用

unsigned char *修飾傳入的參數或寫成unsigned char str[]均是可以的。

大神,最近在網上看了很多您的回答,想問下您52單片機無線傳輸,數據接收儲存轉發C語言怎麼編寫啊?

#include REGX52.h

#define uchar unsigned char

uchar data IRcode[4]; //定義一個4位元組的數組用來存儲代碼

uchar CodeTemp; //編碼位元組緩存變數

uchar i,j,k; //延時用的循環變數

sbit IRsignal=P3^2; //HS0038接收頭OUT端直接連P3.2(INT0)

/**************************延時0.9ms子程序**********************/

void Delay0_9ms(void)

{uchar j,k;

for(j=18;j0;j–)

for(k=20;k0;k–) ;

}

/***************************延時1ms子程序**********************/

void Delay1ms(void)

{uchar i,j;

for(i=2;i0;i–)

for(j=230;j0;j–) ;

}

/***************************延時4.5ms子程序**********************/

void Delay4_5ms(void)

{uchar i,j;

for(i=10;i0;i–)

for(j=225;j0;j–) ;

}

/**************************** 延時子程序 ************************/

void Delay(void)

{uchar i,j,k;

for(i=200;i0;i–)

for(j=200;j0;j–)

for(k=3;k0;k–) ;

}

/************************中斷0解碼服務子程序**********************/

void int0(void) interrupt 0 using 2

{

EA=0;

for(k=0;k10;k++)

{Delay0_9ms();

if (IRsignal==1) //如果0.9ms後IRsignal=1,說明不是引導碼

{k=10;break;}

else if(k==9) //如果持續了10×0.9ms=9ms的低電平,說明是引導碼

{while(IRsignal==0);

Delay4_5ms(); //跳過持續4.5ms的高電平

for(i=0;i4;i++) //分別讀取4個位元組

{for(j=1;j=8;j++) //每個位元組8個bit的判斷

{ while(IRsignal==0); //等待上升沿

Delay0_9ms(); //從上升沿那一時刻開始延時0.9ms,再判斷IRsignal

if(IRsignal==1) //如果IRsignal是”1″,則向右移入一位”1″

{Delay1ms();

CodeTemp=CodeTemp|0x80;

if(j8) CodeTemp=CodeTemp1;

}

else

if(j8)CodeTemp=CodeTemp1;//如果IRsignal是”0″,則向右移一位,自動補”0″

}

IRcode[i]=CodeTemp;

CodeTemp=0;

}

for(i=0;i4;i++) //通過串口將代碼發出

{

SBUF=IRcode[i];

while(!TI); //等待一個位元組發送完畢

TI=0;

}

Delay();

}

}

EA=1;

}

/***********************串口初始化程序*********************/

void initUart(void)

{

TMOD|=0x20;

SCON=0x50;

PCON|=0x80;

TH1=0xff; //57600bps @ 11.0592MHz

TL1=0xff;

TR1=1;

}

/**************************主程序*************************/

void main()

{ initUart();

IT0=1; //INT0為負邊沿觸發, (1:負邊沿觸發,0:低電平觸發)

EX0=1; //外部中斷INT0開, (1:開, 0:關 )

EA=1; //開所有中斷

CodeTemp=0; //初始化紅外編碼位元組緩存變數

Delay();

while(1);

}

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/291178.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-24 13:14
下一篇 2024-12-24 13:14

相關推薦

  • Python讀取CSV數據畫散點圖

    本文將從以下方面詳細闡述Python讀取CSV文件並畫出散點圖的方法: 一、CSV文件介紹 CSV(Comma-Separated Values)即逗號分隔值,是一種存儲表格數據的…

    編程 2025-04-29
  • 單片機列印函數

    單片機列印是指通過串口或並口將一些數據列印到終端設備上。在單片機應用中,列印非常重要。正確的列印數據可以讓我們知道單片機運行的狀態,方便我們進行調試;錯誤的列印數據可以幫助我們快速…

    編程 2025-04-29
  • Python中讀入csv文件數據的方法用法介紹

    csv是一種常見的數據格式,通常用於存儲小型數據集。Python作為一種廣泛流行的編程語言,內置了許多操作csv文件的庫。本文將從多個方面詳細介紹Python讀入csv文件的方法。…

    編程 2025-04-29
  • AES加密解密演算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密演算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES演算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演著非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • 如何用Python統計列表中各數據的方差和標準差

    本文將從多個方面闡述如何使用Python統計列表中各數據的方差和標準差, 並給出詳細的代碼示例。 一、什麼是方差和標準差 方差是衡量數據變異程度的統計指標,它是每個數據值和該數據值…

    編程 2025-04-29
  • Python多線程讀取數據

    本文將詳細介紹多線程讀取數據在Python中的實現方法以及相關知識點。 一、線程和多線程 線程是操作系統調度的最小單位。單線程程序只有一個線程,按照程序從上到下的順序逐行執行。而多…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • Python兩張表數據匹配

    本篇文章將詳細闡述如何使用Python將兩張表格中的數據匹配。以下是具體的解決方法。 一、數據匹配的概念 在生活和工作中,我們常常需要對多組數據進行比對和匹配。在數據量較小的情況下…

    編程 2025-04-29
  • Python爬取公交數據

    本文將從以下幾個方面詳細闡述python爬取公交數據的方法: 一、準備工作 1、安裝相關庫 import requests from bs4 import BeautifulSou…

    編程 2025-04-29

發表回復

登錄後才能評論