久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2452|回復: 7
打印 上一主題 下一主題
收起左側

我是初學者,問些N76E003的串口0按鍵調試問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:723138 發(fā)表于 2020-4-10 10:11 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
我想弄一個簡單的按鍵。  按下按鍵1~6串口調試助手顯示1~6, 我用的是N76E003的串口0,配置了串口0模式1    定時器1模式2  
下面是我自己寫的代碼,但是串口調試助手沒反應,想請教大神幫幫忙。

#include "n76e003.h"
#include "stdio.h"

#define uint32 unsigned int  
//typedef unsigned int uint32;

void delay_us(int n)
{
  int m;
  for(m=0;m<n;m++);
}

void delay_ms(int j)
{
  int k;
  for(k=0;k<j;k++);
  delay_us(1000);
}

void P0_P1_Mode(void)
{
  P0M1=0x3A;  P0M2=0x3B;  //設置P0
  P1M1=0xA0;  P1M2=0xBF;  //設置P1
}

sbit s1 = P0^0;
sbit s2 = P1^0;
sbit s3 = P1^1;
sbit s4 = P1^2;
sbit s5 = P1^3;
sbit s6 = P1^4;

void UART0_Init(uint32 Baud)        //設置串口0
{
   P0_P1_Mode();
   ES=1;                                //使能所有中斷
   ES=1;                //串口0中斷使能
   ET1=0;                                //關閉定時器1中斷
   SCON = 0x52;         //串口0選擇模式1 SM0=0 SM1=1  REN=1  TI=1
   T3CON|=0x00;                 //選擇定時器1                     BRCK=0
   PCON |=0x80;                    //定時器1的波特率加倍             SMOD=1
   CKCON|=0x10;                        //定時器1的時鐘源為系統時鐘         T1M=1
   TMOD |=0x20;         //定時器1選擇模式2 8位計數器,數值從TH1自動重裝載入TL1        M1=1 M0=0  2^8=256

   #ifdef FOSC_160000
   TH1 = 256 - (1000000/Baud+1);                         /*16 MHz */
   #endif            

   TCON |=0x40;                   //定時器1啟動                TR1=1
}

void Send_Data_UART0(int a)
{
  TI=0;
  SBUF=a;                     //串口0數據緩存寄存器
  while(TI==0);
}

int main()
{
   s1=1;
   s2=1;
   s3=1;
   s4=1;
   s5=1;
   s6=1;
   UART0_Init(9600);

   while(1)
   {
            if(s1=0)
         { Send_Data_UART0(1); }
         delay_ms(10);
         if(s2=0)
         { Send_Data_UART0(2); }         
         delay_ms(10);
         if(s3=0)
         { Send_Data_UART0(3); }       
         delay_ms(10);
         if(s4=0)
         { Send_Data_UART0(4); }
         delay_ms(10);
         if(s5=0)
         { Send_Data_UART0(5); }
         delay_ms(10);
         if(s6=0)
     { Send_Data_UART0(6); }
         delay_ms(10);   
   }
}

另外TH1 = 256 - (1000000/Baud+1);     /*16 MHz */  這句中1000000是怎么來的?


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:490426 發(fā)表于 2020-4-10 12:09 | 只看該作者
用過這個芯片,你可以先用串口在大循環(huán)里面不停的發(fā)送數據,看看有沒有數據出來,來判斷是按鍵還是串口配置不對。總之問題得一點一點查找,直接貼代碼不知道你怎么寫的
回復

使用道具 舉報

板凳
ID:89217 發(fā)表于 2020-4-10 13:21 | 只看該作者
直接先用官方的 程序刷一波  有功能了在自己改成想要的不就行了
回復

使用道具 舉報

地板
ID:723138 發(fā)表于 2020-4-10 15:13 | 只看該作者
羅程峰8200 發(fā)表于 2020-4-10 13:21
直接先用官方的 程序刷一波  有功能了在自己改成想要的不就行了

沒有啊   我就直接看規(guī)格書寫的   沒懂多少
回復

使用道具 舉報

5#
ID:723138 發(fā)表于 2020-4-10 15:15 | 只看該作者
xujiabin 發(fā)表于 2020-4-10 12:09
用過這個芯片,你可以先用串口在大循環(huán)里面不停的發(fā)送數據,看看有沒有數據出來,來判斷是按鍵還是串口配置 ...

初學,不太懂,別人就給我個原理圖    然后串口調試,所以你這么說我也不知道該怎么弄
回復

使用道具 舉報

6#
ID:723138 發(fā)表于 2020-4-10 15:22 | 只看該作者
這個是原理圖,挺簡單的,我是初學的,根據查看規(guī)格書寫的代碼,但是不知道哪里有問題,串口調試助手沒反應。有能指出來的嗎?

IMG_20200402_192112.jpg (6.15 MB, 下載次數: 41)

IMG_20200402_192112.jpg
回復

使用道具 舉報

7#
ID:968164 發(fā)表于 2021-9-28 10:06 | 只看該作者
if(a==B) 不是  if(a=b)
回復

使用道具 舉報

8#
ID:359272 發(fā)表于 2021-9-29 08:18 | 只看該作者
你的if()里面怎么全部是賦值語句,判斷的話是兩個等號,==
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 伊人在线 | 夜夜爆操 | 久久久久久国产精品 | 一级黄色裸片 | 国产精品国产精品国产专区不片 | 精品国产一区二区在线 | 亚洲精品www久久久久久广东 | 国产美女特级嫩嫩嫩bbb片 | 亚洲三级国产 | 欧美jizzhd精品欧美巨大免费 | 免费观看一级特黄欧美大片 | 毛片高清| 犬夜叉在线观看 | 国产精品一区在线 | 成年人在线观看视频 | 中国大陆高清aⅴ毛片 | 午夜精品一区 | 成人日b视频| 天天综合网天天综合色 | 男女视频在线看 | 久久综合狠狠综合久久综合88 | 国产精品久久久久久久午夜片 | av影音资源| 黄视频在线网站 | 日韩一区精品 | 亚洲综合天堂 | 美美女高清毛片视频免费观看 | 亚洲精品久久久久中文字幕二区 | 久久精品国产一区二区电影 | 一区二区成人 | 蜜桃av一区二区三区 | 亚洲精品久久久久久国产精华液 | www.xxxx欧美 | 久久99精品视频 | 国产网站在线播放 | 精品国产18久久久久久二百 | 日韩成人在线播放 | 99re热精品视频 | 在线视频91 | 亚洲午夜精品一区二区三区 | 久久国产视频网 |