找回密码
 立即注册
楼主: 电子DIY小家

《8051U深度入门到32位51大型实战视频》,【免费 + 包邮 送】实验箱@Ai8051U,100万套

   火... [复制链接]
  • 打卡等级:偶尔看看III
  • 打卡总天数:33
  • 最近打卡:2025-05-01 01:40:00
已绑定手机

13

主题

75

回帖

331

积分

中级会员

积分
331
发表于 2025-4-18 00:33:02 | 显示全部楼层
第八集学完。继续下一集。第八集比第七集学的快,加油!
学习MCU
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:11
  • 最近打卡:2025-04-30 09:10:49
已绑定手机

1

主题

14

回帖

83

积分

注册会员

积分
83
发表于 2025-4-18 08:56:18 | 显示全部楼层
继续打卡学习
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:44
  • 最近打卡:2025-04-29 08:34:05
已绑定手机

4

主题

37

回帖

310

积分

中级会员

积分
310
发表于 2025-4-18 10:48:04 | 显示全部楼层
学习打卡
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:217
  • 最近打卡:2025-04-29 08:26:08

6

主题

217

回帖

350

积分

中级会员

积分
350
发表于 2025-4-18 10:51:57 | 显示全部楼层
今天继续定时器中断
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:136
  • 最近打卡:2025-05-01 11:32:38
已绑定手机

4

主题

64

回帖

758

积分

高级会员

积分
758
发表于 2025-4-18 11:18:50 | 显示全部楼层
每天都来看看冲哥更新没有!
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民II
  • 打卡总天数:83
  • 最近打卡:2025-04-30 19:02:05
已绑定手机

0

主题

49

回帖

326

积分

中级会员

积分
326
发表于 2025-4-18 12:59:16 | 显示全部楼层
继续学习
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:17
  • 最近打卡:2025-04-30 14:17:39
已绑定手机

0

主题

33

回帖

136

积分

注册会员

积分
136
发表于 2025-4-18 15:08:36 | 显示全部楼层
来打卡了
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:59
  • 最近打卡:2025-05-01 09:59:28
已绑定手机

3

主题

32

回帖

369

积分

中级会员

积分
369
发表于 2025-4-18 19:42:02 | 显示全部楼层
求更
回复

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:48
  • 最近打卡:2025-04-30 10:39:03
已绑定手机

2

主题

28

回帖

276

积分

中级会员

积分
276
发表于 2025-4-18 22:40:59 | 显示全部楼层
看完第二十集ADC_NTC测温
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:43
  • 最近打卡:2025-04-30 21:21:30
已绑定手机

1

主题

29

回帖

245

积分

中级会员

积分
245
发表于 2025-4-19 00:28:56 | 显示全部楼层
求大哥 这个8位 数码管 用了2个595 ,这个代码为何 一般运算 正常 ,但 遇到  (小 数 除 大数)   就无法显示出来。
#include "io.h"

u8 SEG_NUM[]=
{
    0x3F,       /*'0', 0*/
    0x06,       /*'1', 1*/
    0x5B,       /*'2', 2*/
    0x4F,       /*'3', 3*/
    0x66,       /*'4', 4*/
    0x6D,       /*'5', 5*/
    0x7D,       /*'6', 6*/
    0x07,       /*'7', 7*/
    0x7F,       /*'8', 8*/
    0x6F,       /*'9', 9*/
    0x77,       /*'A', 10*/
    0x7C,       /*'B', 11*/
    0x39,       /*'C', 12*/
    0x5E,       /*'D', 13*/
    0x79,       /*'E', 14*/
    0x71,       /*'F', 15*/
    0x40,       /*'-', 16*/
    0x00,       /*' ', 17*/
    0x80,       /*'.', 18*/
};

u8 T_NUM[8] =
{
        0X01,0X02,0X04,0X08,0X10,0X20,0X40,0X80
};


void Init_595(void)
{
        HC595_SER = 0;
        HC595_RCK = 0;
        HC595_SCK = 0;       
}
       


void Send_595( u8 dat )
{
        u8 i;
       
        for( i=0;i<8;i++ )
        {
                dat <<= 1;                                //DAT = (DAT<<1);        //CY
                HC595_SER = CY;                //先把数据写到引脚上
                HC595_SCK = 1;                        //输出上升沿的时钟信号
                HC595_SCK = 0;
        }
}

void Display_Seg(u8 HC595_1,u8 HC595_2)
{
                        //数码管段码输出  高电平点亮
       
        Send_595(HC595_2);                        //数码管位码      低电平点亮
        Send_595(HC595_1);       
        HC595_RCK = 1;                                //数据输出       
        HC595_RCK = 0;
}

u8 Seg_no = 0;
u16 shi  =0;
u16 fen  =0;
u16 miao =0;

void Seg_Task(void)
{
        uf num = 0;
        if( Seg_no ==0 )                                                                //小时十位
        {
                num =(fen/100)%10;
                Display_Seg( SEG_NUM[num] , ~T_NUM[0]);                //数码管刷段码和位码
        }
        else if( Seg_no ==1 )                                                        //小时的个位
        {
                num =(fen/10)%10;
                Display_Seg( SEG_NUM[num] , ~T_NUM[1]);                //数码管刷段码和位码
        }       
        else if( Seg_no ==2 )                                                        //第一个横杠
        {
                num =(fen/1)%10;
                Display_Seg( SEG_NUM[num] , ~T_NUM[2]);                //数码管刷段码和位码
        }       
        else if( Seg_no ==3 )                                                        //分钟的十位
        {
                num = fen%10;
                Display_Seg( SEG_NUM[num] , ~T_NUM[3]);                //数码管刷段码和位码
        }
        else if( Seg_no ==4 )
        {
                num = (miao/1000)%10;
                Display_Seg( SEG_NUM[num] , ~T_NUM[4]);                //数码管刷段码和位码
        }       
        else if( Seg_no ==5 )
        {
                num = (miao/100)%10;
                Display_Seg( SEG_NUM[num] , ~T_NUM[5]);                //数码管刷段码和位码
        }       
        else if( Seg_no ==6 )
        {
                num = (miao/10)%10;
                Display_Seg( SEG_NUM[num] , ~T_NUM[6]);                //数码管刷段码和位码
        }
        else if( Seg_no ==7 )
        {
                num = miao%10;
                Display_Seg( SEG_NUM[num] , ~T_NUM[7]);                //数码管刷段码和位码
        }       
        else
        {
               
        }
        Seg_no ++;
        if( Seg_no>7 )
                Seg_no=0;
}

void TIMECOUNT_Task(void)
{
        miao =100;
        fen = 800/4095*500; // 这个运算 不知道是什么回事 传不过        void Seg_Task(void)。
       
}
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-1 21:04 , Processed in 0.133488 second(s), 126 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表