矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
查看: 8357|回复: 30

点焊机控制装置(51单片机)

[复制链接]
     
发表于 2018-12-17 13:58:28 | 显示全部楼层 |阅读模式
本帖最后由 hujj 于 2018-12-17 15:29 编辑

    最近做了一个用单片机的点焊机控制装置,使用的是89C51单片机、LCD5110显示屏和微型继电器,通过检测按钮信号,精确控制点焊机变压器的导通时间和两次焊接的间隔时间。变压器导通时间从40毫秒到2600毫秒之间,按20毫秒为一档连续可调,两次焊接的间隔时间则为5秒和10秒两档,这两个参数均通过7+1位拨码开关由用户根据需要动态设置,设置结果即时显示在屏幕上。参见下图:

003电子点焊机.jpg

    屏幕中间显示的是设置的点焊时间,以毫秒为单位,通过左起的7位拨码开关设置。下部左边显示的的是设置的间隔时间,为5秒和10秒两档, 通过最右边的拨码开关设置。屏幕右下角显示的是间隔时间倒计时,只有倒计时为零时,单片机才接收点焊按钮的信号。下图是点焊机的正面:

115控制板制作_通电测试.jpg

    机箱面板上有3个LED指示灯,最上面红色的是电源指示灯,面板上开关打开接通控制电源后常亮。中间橙色的是工作指示灯,点焊机变压器接通后点亮,关闭后即灭。下面绿色的是准备好信号灯,当倒计时为零时此灯闪烁,只有绿色信号灯闪烁时点焊按钮才有效,这个信号灯在焊把上也同时存在。
    下面是控制线路的原理图:

004电子点焊机控制部分原理图.jpg

    整个控制线路用了两块万用板搭焊,一块安装了3个LED信号灯、LCD5110显示屏和8位拨码开关,另一块则是单片机及外围电路、微型继电器以及7805稳压块等。

    由于我选用的LCD5110没有带字库,自建了12*14点阵的汉字软字库子集和7*12点阵的ASCII码软字库子集供显示用。整个程序如下:

1、main.c文件

/*******************************************************************************
*                                                                                                                                            *
*                                        ??????????                                                                           *
--------------------------------------------------------------------------------
* ?????:    51????????????                                                                                                   *
*              ????????????????????????                                                           *
*              ???????????????????????????????趨???????????ж?????*
*              ???趨?????????????????????????????????              *
* ?汾???:    ?????@2018??8??                                                                                              *
*******************************************************************************/
/*
* ?????P0^0~P0^4??????LCD5110????RET??CE??D/C??DIN??CLK????LCD_5110.h?ж???
*       P0^5     ?豸??????????????????
*            P0^6     ?豸????????????????????????
*
*            P1^0~P1^6   ????????????20?????1??λ??0~127??λ??
*            P1^7        ?????????0=5??1=10??
*******************************************************************************/

#include<reg51.h>
//#include<intrins.h>
#include"LCD_5110.h"      //????LCD??????????

#define u8 unsigned char  //?????
#define u16 unsigned int  //????
#define        u64 unsigned long //?????

#define        SZP1 P1           //P1????????????????????λ?????????0-127??*20ms??                                                                                                  
                          //???λ???????0=5??1=10??
sbit LED_work = P0^5;     //?豸?????????????????????
sbit LED_read = P0^6;     //?豸?????????????????????
sbit work     = P0^7;          //????????????????£?
                                                                                                                       
//--??????????--//
u8  sdsj = 0;             //?趨?????λ
u64 shsj = 0;             //?趨???????????????????λ??
u8 wait = 5;                          //??????????5???10??????P1.7?????
                                                          
u8 time_work = 0;         //???????????20????/??λ??
u8 time_wait = 0;                  //????????????λ??
bit time_1s = 0;              //?????
bit time_20ms = 0;                  //20???????
bit flag = 0;             //??????????(0=?????????1=???????


/*******************************************************************************
* ?? ?? ??         : ReadSet
* ????????                   : ?????ò????
* ??    ??         : ??                                                                                                                                               
* ??    ??         : ??
*******************************************************************************/
void ReadSet(void)
{
        sdsj = SZP1;               //??P1????????????????
        if (sdsj>127) wait = 10;   //???λ1,??????=10??
        else wait = 5;
        LCD_write_val(27,4,2,wait);//????趨???????
          
        sdsj = (sdsj & 0x7f) + 3;  //???7λ???????3??60????
        shsj = sdsj * 20;                   //20?????????λ
        LCD_write_val(27,2,4,shsj);//????趨??????
}


/*******************************************************************************
* ?? ?? ??         : timehand
* ????????                   : 20????????????????20?????????
* ??    ??         : ??
* ??    ??         : ??
*******************************************************************************/
void TimeHand(void)
{
    if (flag == 0)        //??????
        {
            if (work == 0)    //???????????
                {
                        flag = 1;     //???ù??????
                        time_work = sdsj;//??趨???
                        LED_work = 0; //??????????
                        LED_read = 1; //?????????
                }
                else                          //?????????
                {
                        ReadSet();          //??????????
                }                                                                       
        }
        else                          //??????
        {
                time_work--;
                if (time_work == 0)//??????
                {
                        LED_work = 1;  //?????????
                        LED_read = 1;  //????????????
                        flag = 0;            //???????????
                        time_wait = wait;//?????????
                        LCD_write_val(61,4,2,time_wait);//???????????
                }
        }
}



/*******************************************************************************
* ?? ?? ??         :
* ????????                   : T0?ж??????
* ??    ??         : ??
* ??    ??         : ??
*******************************************************************************/
void InterruptTimer0() interrupt 1
{
        static u8 i = 0;           //????
        static u8 j = 0;           //20????

        TH0 = 0xFC;            //?????????,???1ms
        TL0 = 0x66;

        i++;
        if (i > 19)                   //20????????
        {
            i = 0;
                time_20ms = 1;           //??20??????
            j++;
            if (j > 49)        //1??
                {
                    j = 0;
                        time_1s = 1;   //??1????
            }
        }
}


/*******************************************************************************
* ?? ?? ??         : main
* ????????                   : ??????
* ??    ??         : ??
* ??    ??         : ??
*******************************************************************************/
void main(void)
{
//???ó????????
    u8 i, x ,y;
       
        LED_work = 1; //????
        LED_read = 1;
        LCD_init();                   //?????5110???

        x = 8;                                   //????????λ??
        y = 0;
        for (i = 0; i < 5; i++)//??????????????
        {
                LCD_write_char(x,y,i);//
                x = x +        14;        //?????????λ??
        }
        x = 0;
        y = 2;
        LCD_write_char(x,y,3); //?????????
        x = 14;
        LCD_write_char(x,y,5); //????????
        x = 59;
        LCD_write_char(x,y,8); //?????????
    x = 72;
        LCD_write_char(x,y,9); //???????
        x = 0;
        y = 4;
        LCD_write_char(x,y,6); //???????
        x = 14;
        LCD_write_char(x,y,7); //????????
        x = 44;
        LCD_write_char(x,y,9); //???????
        x = 76;
        LCD_write_ASCII(x,y,12);//?????s??

        ReadSet();              //????趨?????????
        LCD_write_val(61,4,2,time_wait);//???????????
        LED_read = 0;           //????????????

        TMOD = 0x01;            //????T0???1
//        TH0 = 0xF8;             //?T0?????0xF8CD,???2ms
//        TL0 = 0xCD;
    TH0 = 0xFC;             //?T0?????0xFC67,???1ms
    TL0 = 0x66;
//        TH0 = 0xFC;
//        TL0 = 0xC3;                    //?T0?????0xFA02,???1ms
        ET0 = 1;                //??T0?ж?
        TR0 = 1;                //????????0
        EA = 1;                 //?????ж?
       
        while(1)
        {
                if (time_1s == 1)   //?????
                {
                    time_1s = 0;    //????????
                       
                        if (time_wait > 0)
                        {
                            time_wait--;
                        if (time_wait == 0)
                            {
                                LED_read = 0;//??????????
                            }
                                LCD_write_val(61,4,2,time_wait);//???????????
                   }
                        else
                        {
                            if (LED_work == 1)
                                {
                                    LED_read = ~LED_read;//????????????
                                }
                    }
                }       
                       
                if (time_20ms == 1)
                {
                        time_20ms = 0;          //????20??????
                        if (time_wait == 0)
                        {
                            TimeHand();   //????20?????????
                        }
                }
        }
}

2、LCD_5110.c

#include<reg51.h>
#include<intrins.h>
#include"LCD_5110.h"
#include"charcode.h"           //12*16(14)?????????
#include"asciicode.h"          //7*16(12)????ASCII???


/*********************************************
* ?????????LCD_write_byte
* ????????????SPI??????д????/????LCD
* ????????data??????:д????????
*           dc        :д????1/????0???
* ???????????
* ????????D/C(LCD_DC)???????д????????D/C=0)?????????D/C=1)
*********************************************/

void LCD_write_byte(unsigned char dat,bit dc)
{
    unsigned char i;
    LCD_CE = 0;            //5110????Ч??????????????
    LCD_DC = dc;                   //dc=0д????dc=1д????

        for (i=0; i<8; i++)    //????8λ????
    {
        if (dat & 0x80)
                {
            LCD_DIN = 1;
        }
                else
        {
                    LCD_DIN = 0;
        }
                LCD_CLK = 0;

        dat = dat << 1;           //?????λ????????
        LCD_CLK = 1;           //??????????
    }
    LCD_CE = 1;             //???5110
}


/*********************************************
* ?????????LCD_init
* ?????????5110?????
* ??????????
* ???????????
* ???????????????????RES???????帴λ????VDD?????????????100ms,RST?????????<0.3VDD??

*********************************************/

void LCD_init(void)
{
    LCD_RST = 0;            //?????????LCD??λ?????????
    _nop_();
        _nop_();
    LCD_RST = 1;

    LCD_CE = 0;             //???LCD
    _nop_();
    _nop_();
    LCD_CE = 1;             //???LCD

    LCD_write_byte(0x21,0); //??????LCD??????LCD??
    LCD_write_byte(0xc8,0); //????????????
    LCD_write_byte(0x06,0); //???У??????????2??
    LCD_write_byte(0x13,0); //1:48
    LCD_write_byte(0x20,0); //??????????V=0??????
    LCD_write_byte(0x0c,0); //?趨??????????????
    LCD_clear();            //????

    LCD_CE = 0;             //???LCD??
}

/*********************************************
* ?????????LCD_clear
* ?????????5110??????????д???????
* ??????????
* ???????????
* ???????
*********************************************/

void LCD_clear(void)
{
    unsigned char i,j;
        LCD_set_XY(0,0);            //????????????
    for (i=0; i<6; i++)
        {
            for (j=0; j<84; j++)
                {
                    LCD_write_byte(0x00,1);
                }
        }
}



/*********************************************
* ?????????LCD_set_XY
* ?????????????LCD??????
* ????????X   ??????:0-83??
*           Y         :0-5
* ???????????
* ?????
*********************************************/

void LCD_set_XY(unsigned char X,unsigned char Y)
{
  LCD_write_byte(0x40 | Y,0); //column??
  LCD_write_byte(0x80 | X,0); //row??
}


/*********************************************
* ?????????LCD_write_ASCII
* ????????????????????7*12(16)
* ????????x,y,cid  ??:????????  0 1 2 3 4 5 6 7 8 9  =  m  s
* ???????????                        ?????к??0,1,2,3,4,5,6,7,8,9,10,11,12
* ?????ASCII????????ASC_7[13][14]????
*********************************************/

void LCD_write_ASCII(unsigned char X,unsigned char Y,unsigned char cid)
{
    unsigned char i;
   
        LCD_set_XY(X,Y);                           //?趨???λ?????????
        for (i=0; i<7; i++)            //?????п??????д7?е????????????????
    {
            LCD_write_byte(ASC_7[cid],1);
        }
   
        LCD_set_XY(X,Y+1);             //??λ????У?д?°??????
        for (i=7; i<14; i++)
    {
        LCD_write_byte(ASC_7[cid],1);
    }
}


/*********************************************
* ?????????LCD_write_CHAR
* ????????????????????12*14(16)
* ????????x,y,cid  ??:????????  ???????????????
* ???????????                        ?????к??0,1,2,3,4,5,6,7,8,9,10
* ?????CHAR????????CHAR_12[11][24]????
*********************************************/

void LCD_write_char(unsigned char x,unsigned char y,unsigned char cid)
{
    unsigned char i;
   
        LCD_set_XY(x,y);                            //?趨???λ?????????
        for (i=0; i<12; i++)            //?????п??????д7?е????????????????
    {
            LCD_write_byte(CHAR_12[cid],1);
        }
   
        LCD_set_XY(x,y+1);              //??λ????У?д?°??????
        for (i=12; i<24; i++)
    {
        LCD_write_byte(CHAR_12[cid],1);
    }
}

/*********************************************
* ?????????LCD_write_val                                                                                                    
* ????????????λ????????
* ????????X??Y??????:???????????????
*           l         ;????????λ???????????
*           vol       ;???
* ???????????
* ?????
*********************************************/

void LCD_write_val(unsigned char x,unsigned char y,unsigned char l,unsigned long val)
{
    unsigned char i, v;
        unsigned long temp_x;

        if (l == 4)
        {
            temp_x = 1000;
                for (i=0; i<2; i++)
                {
                    if (val > temp_x)
                        {
                            v = val / temp_x;
                        }
                        else
                        {
                            v = 0;
                        }
                        LCD_write_ASCII(x,y,v);        //??????λ????
                        val = val - v * temp_x;
                        temp_x = 100;
                        x = x + 8;
                }
        }
    if (val > 9)
        {
            v = val / 10;
        }
        else
        {
            v = 0;
        }
        LCD_write_ASCII(x,y,v);         //??????λ????
       
        v = val - v * 10;
        x = x + 8;
        LCD_write_ASCII(x,y,v);         //???????λ????
}

3、LCD_5110.h

#ifndef __LCD5110_H
#define __LCD5110_H

#include<reg51.h>
#include<intrins.h>

/*****************************************
*
* ????LCD?????????
*
*****************************************/

sbit LCD_RST = P0^0;         //??λ???
sbit LCD_CE  = P0^1;         //?????
sbit LCD_DC  = P0^2;         //????/?????????
sbit LCD_DIN = P0^3;         //?????????
sbit LCD_CLK = P0^4;         //????????

/**************??????????******************

***************????????**********************/
void LCD_write_byte(unsigned char dat,bit dc);
void LCD_init(void);
void LCD_clear(void);
void LCD_set_XY(unsigned char X,unsigned char Y);
void LCD_write_ASCII(unsigned char X,unsigned char Y,unsigned char cid);
void LCD_write_char(unsigned char x,unsigned char y,unsigned char cid);
void LCD_write_val(unsigned char X,unsigned char Y,unsigned char l,unsigned long val);
/***************????????????****************/
#endif


keil项目文档压缩包上传在5楼。

评分

3

查看全部评分

     
 楼主| 发表于 2018-12-17 14:10:19 | 显示全部楼层
程序代码从keil拷贝复制过来后,汉字全显示为?号了,整个项目文件压缩打包后有762K,作为附件又因文件太大上传不了。
回复 支持 反对

使用道具 举报

     
发表于 2018-12-17 14:17:01 | 显示全部楼层
都单片机了,为什么还用拨码开关,就算不用编码器,至少也可以用按钮开关啊。

PS 代码可以传百度云
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2018-12-17 15:19:15 | 显示全部楼层
y5000 发表于 2018-12-17 14:17
都单片机了,为什么还用拨码开关,就算不用编码器,至少也可以用按钮开关啊。

PS 代码可以传百度云

单片机断电之后无法保设置的参数,另外加flash存储芯片保存的话又要添加按键,就更复杂化了,所以选用拨码开关来做参数设置。按钮开关的功能与拨码开关有区别,用来设置参数是不方便的。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2018-12-17 15:24:53 | 显示全部楼层
我将原理图文件排除之后,压缩包降至709K,终于满足<750K的限制了。


点焊机.rar (708.39 KB, 下载次数: 506)
回复 支持 反对

使用道具 举报

     
发表于 2018-12-17 19:23:43 | 显示全部楼层
高大上的点焊机~~~
回复 支持 反对

使用道具 举报

     
发表于 2018-12-17 20:17:04 | 显示全部楼层
液晶做显示不知道点焊机工作时会不会有干扰,我之前用数码管和编码器做过一个,程序还没完工,工作太忙,没时间弄
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2018-12-17 20:46:54 | 显示全部楼层
单片机电源上 用了一个470微法的电解电容,测试时没有发现LCD显示屏受影响。
回复 支持 反对

使用道具 举报

     
发表于 2018-12-18 18:15:48 | 显示全部楼层
hujj 发表于 2018-12-17 14:10
程序代码从keil拷贝复制过来后,汉字全显示为?号了,整个项目文件压缩打包后有762K,作为附件又因文件太大 ...

从高级模式标题栏中,点击<>符号添加代码文字功能按钮,将程序代码复制到里面发表,就不会发生以上问题了。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2018-12-18 21:48:08 | 显示全部楼层
本帖最后由 hujj 于 2018-12-18 21:51 编辑

谢谢指教!尝试这个功能,但仍然不能显示汉字。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2018-12-18 21:50:20 | 显示全部楼层
  1. /////////////////////////////////////////////////////////////////////////
  2. // ?????????                                                          //
  3. // ?????: ????12.dot ?????????λ,????????:????????????         //
  4. /////////////////////////////////////////////////////////////////////////
  5. #ifndef __CHARCODE_H
  6. #define __CHARCODE_H

  7. //#ifdef CHAR_CODE

  8. //struct CHAR_12TypeDef code CHAR_12[11][24] =  //?????,11?????????????24?????
  9. code unsigned char CHAR_12[11][24] =  //?????,11?????????????24?????
  10. {
  11. //"??",
  12. 0x00,0xF0,0x90,0x90,0x90,0xFE,0x90,0x90,0x90,0xF8,0x10,0x00,
  13. 0x00,0x07,0x04,0x04,0x04,0x3F,0x24,0x44,0x44,0x47,0x40,0x38,

  14. //"??",
  15. 0x00,0x80,0x84,0x84,0x82,0x82,0xE2,0x92,0x8A,0x86,0xC0,0x80,
  16. 0x00,0x00,0x00,0x10,0x20,0x40,0x7F,0x00,0x00,0x00,0x00,0x00,

  17. //"??",
  18. 0x00,0x00,0xC0,0x40,0x40,0x7E,0x48,0x48,0x48,0xCC,0x08,0x00,
  19. 0x20,0x18,0x03,0x0A,0x32,0x02,0x0A,0x32,0x02,0x0A,0x10,0x20,

  20. //"??",
  21. 0x70,0x00,0xFE,0x20,0x00,0xBE,0xAA,0xAA,0xAA,0xAA,0xBE,0x00,
  22. 0x60,0x18,0x07,0x08,0x14,0x04,0x04,0x04,0x7F,0x04,0x04,0x04,

  23. //"??",
  24. 0x10,0xD0,0xFE,0x90,0x10,0x00,0xF8,0x08,0x08,0xFC,0x08,0x00,
  25. 0x03,0x00,0x7F,0x00,0x21,0x10,0x0F,0x00,0x00,0x3F,0x40,0x38,

  26. //"??",
  27. 0x10,0x10,0xFE,0x50,0x20,0x28,0x38,0xAA,0x6A,0x38,0xA8,0x20,
  28. 0x22,0x41,0x3F,0x40,0x21,0x15,0x1B,0x09,0x0D,0x13,0x21,0x41,

  29. //"??",
  30. 0x00,0xF8,0x02,0x04,0xE0,0x24,0x24,0xE4,0x04,0x04,0xFE,0x04,
  31. 0x00,0x7F,0x00,0x00,0x1F,0x09,0x09,0x0F,0x20,0x40,0x7F,0x00,

  32. //"??",
  33. 0xFC,0x24,0x54,0x8C,0x82,0xBA,0xAA,0xAA,0xAA,0xBA,0x83,0x82,
  34. 0x7F,0x01,0x02,0x01,0x7F,0x0A,0x0B,0x3E,0x0B,0x0A,0x40,0x3F,

  35. //"??",
  36. 0x80,0x44,0x44,0x74,0x54,0x56,0x54,0xA4,0x74,0x46,0x44,0xC0,
  37. 0x10,0x10,0x11,0x15,0x15,0x3F,0x55,0x55,0x55,0x51,0x50,0x60,

  38. //"??",
  39. 0x24,0xA4,0xFC,0x22,0x22,0x00,0xF0,0x00,0xFE,0x10,0x20,0x40,
  40. 0x06,0x01,0x7F,0x01,0x42,0x21,0x10,0x10,0x0D,0x04,0x03,0x01,

  41. //"?",
  42. 0xFC,0x90,0x90,0x90,0xFC,0x20,0xA0,0x20,0x20,0xFE,0x28,0x20,
  43. 0x0F,0x04,0x04,0x04,0x0F,0x00,0x11,0x26,0x40,0x7F,0x00,0x00,

  44. };

  45. // ??????
  46. // ???????????????
  47. #endif        //end of CHAR_CODE

  48. //#endif
复制代码
回复 支持 反对

使用道具 举报

     
发表于 2018-12-19 19:45:38 | 显示全部楼层
本帖最后由 gxg0000 于 2018-12-19 19:54 编辑
  1. /*******************************************************************************
  2. *                                                                                                                                            *
  3. *                                        点焊机控制器                                                                           *
  4. --------------------------------------------------------------------------------
  5. * 结构说明:    51单片机计时控制                                                                                                   *
  6. *              在检测到点焊手柄发出的工作信号时,                                                           *
  7. *              立即接通点焊机的电源,点焊机开始工作,设定的时间结束后切断电源,*
  8. *              在设定的间隔时间内,不接收点焊手柄发出的工作信号。              *
  9. * 版本说明:    胡家峻@2018年8月                                                                                              *
  10. *******************************************************************************/
  11. /*
  12. * 单片机P0^0~P0^4口分配给LCD5110使用:RET、CE、D/C、DIN、CLK(在LCD_5110.h中定义
  13. *       P0^5     设备等待(可以工作)信号灯
  14. *            P0^6     设备工作间隙(不接收点焊信号)信号灯
  15. *
  16. *            P1^0~P1^6   开关设置点焊时间(20毫秒为1单位,0~127单位)
  17. *            P1^7        工作间隙:0=5秒,1=10秒
  18. *******************************************************************************/

  19. #include<reg51.h>
  20. //#include<intrins.h>
  21. #include"LCD_5110.h"      //包含LCD显示驱动文件

  22. #define u8 unsigned char  //单字节
  23. #define u16 unsigned int  //双字节
  24. #define        u64 unsigned long //四字节

  25. #define        SZP1 P1           //P1口为初始设置的数据,低七位为定时数值(0-127)*20ms,                                                                                                  
  26.                           //第八位为间隙时间,0=5秒,1=10秒
  27. sbit LED_work = P0^5;     //设备工作信号(低电平点焊机接通)
  28. sbit LED_read = P0^6;     //设备就绪信号(低电平可以工作)
  29. sbit work     = P0^7;          //点焊按钮信号(低电平按下)
  30.                                                                                                                        
  31. //--定义全局变量--//
  32. u8  sdsj = 0;             //设定的点焊单位
  33. u64 shsj = 0;             //设定的点焊时间(双字节,以毫秒为单位)
  34. u8 wait = 5;                          //设置的间隔时间(5秒或10秒,根据P1.7确定)
  35.                                                           
  36. u8 time_work = 0;         //焊接时间计时(20毫秒/单位)
  37. u8 time_wait = 0;                  //等待时间计时(单位秒)
  38. bit time_1s = 0;              //秒信号
  39. bit time_20ms = 0;                  //20毫秒信号
  40. bit flag = 0;             //定时工作标志(0=待机或间隔,1=正在工作
复制代码

这时你的程序,我发了一段没有问题,有可能keil字体设置不好,乱码了。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2018-12-19 20:00:41 | 显示全部楼层
也许是吧,我对Keil的操作还不熟悉,可能还有哪里没有设置好。
回复 支持 反对

使用道具 举报

     
发表于 2018-12-19 20:06:37 | 显示全部楼层
keil的字体要设置的,不然中文就显示乱码
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2018-12-19 20:34:27 | 显示全部楼层
ddzx 发表于 2018-12-19 20:06
keil的字体要设置的,不然中文就显示乱码

在Keil里面显示汉字是正常的,只是复制粘贴到帖子里时成了乱码。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2024-6-4 12:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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