ÕÒ»ØÃÜÂë
 Á¢¼´×¢²á

QQ怬

Ö»ÐèÒ»²½£¬¿ìËÙ¿ªÊ¼

ËÑË÷
²é¿´: 21702|»Ø¸´: 6
ÊÕÆð×ó²à

TM1640µ¥Æ¬»úÇý¶¯Ô´´úÂëÓëÖÐÎÄ×ÊÁÏÏÂÔØ

  [¸´ÖÆÁ´½Ó]
ID:157600 ·¢±íÓÚ 2017-8-5 09:57 | ÏÔʾȫ²¿Â¥²ã |ÔĶÁģʽ
¡¾ÓÃ;¡¿ LEDÇý¶¯¿ØÖÆרÓõç·
¡¾ÐÔÄÜ ²ÎÊý¡¿
    ²ÉÓÃSOP28µÄ·â×°ÐÎʽ¡£TM1640ÊÇÒ»ÖÖLED£¨·¢¹â¶þ¼«¹ÜÏÔʾÆ÷£©Çý¶¯¿ØÖÆרÓõç·£¬ÄÚ²¿¼¯³ÉÓÐMCUÊý×Ö½Ó¿Ú¡¢Êý¾ÝËø´æÆ÷¡¢LED¸ßѹÇý¶¯µÈµç·¡£±¾²úÆ·ÐÔÄÜÓÅÁ¼£¬ÖÊÁ¿¿É¿¿¡£Ö÷ÒªÓ¦ÓÃÓÚµç×Ó³Ó¼°Ð¡¼Òµç²úÆ·µÄÏÔʾÆÁÇý¶¯¡£

TM1640Òý½Åͼ£º
0.png
¹Ü½Å¹¦Äܶ¨Ò壺
0.png

½Ó¿Ú˵Ã÷
΢´¦ÀíÆ÷µÄÊý¾Ýͨ¹ýÁ½Ïß×ÜÏß½Ó¿ÚºÍ TM1640 ͨÐÅ£¬ÔÚÊäÈëÊý¾Ýʱµ± CLK ÊǸߵçƽʱ£¬DIN ÉϵÄÐźÅ
±ØÐë±£³Ö²»±ä£»Ö»ÓÐ CLK ÉϵÄʱÖÓÐźÅΪµÍµçƽʱ£¬DIN ÉϵÄÐźŲÅÄܸı䡣Êý¾ÝµÄÊäÈë×ÜÊǵÍλÔÚÇ°,
¸ßλÔÚºó´«Êä.Êý¾ÝÊäÈëµÄ¿ªÊ¼Ìõ¼þÊÇ CLK Ϊ¸ßµçƽʱ£¬DIN Óɸ߱äµÍ£»½áÊøÌõ¼þÊÇ CLK Ϊ¸ßʱ£¬DIN ÓÉ
µÍµçƽ±äΪ¸ßµçƽ¡£
Ö¸ÁîÊý¾Ý´«Êä¹ý³ÌÈçÏÂͼ£º
0.png

tm1640µÄµ¥Æ¬»úCÓïÑÔ´úÂëÓë´ó¼Ò·ÖÏí,´ó¼Ò×ÔÐÐÒÆÖ²µ½×Ô¼ºµÄ¹¤³ÌÖÐ
  1. void    delay_tm1640    (u8 _delay_time)     //Èç¹ûÐźÅÒý½Å½ÓÉϵçÈÝ ÐèÔö¼ÓÑÓʱ
  2. {
  3.     u8 i= _delay_time;
  4.     while(i--)
  5.     {
  6.         nop();
  7.         nop();
  8.         nop();
  9.         nop();
  10.         nop();
  11.         nop();
  12.     }
  13. }
  14. /******************************************************************************/
  15. void  init_tm1640  (void)
  16. {
  17.     //¼ÓÈë¶Ë¿Ú´¦Àí
  18.     CLK=0;delay_tm1640(1);  
  19.     DIO=1;delay_tm1640(1);
  20.     CLK=1;delay_tm1640(1);
  21.     DIO=0;delay_tm1640(1);
  22. }
  23. /******************************************************************************/
  24. void    start_tm1640    (void)
  25. {
  26.     CLK=0;delay_tm1640(1);  
  27.     DIO=1;delay_tm1640(1);
  28.     CLK=1;delay_tm1640(1);
  29.     DIO=0;delay_tm1640(1);
  30. }
  31. /******************************************************************************/
  32. void    stop_tm1640    (void)
  33. {
  34.     CLK=0;delay_tm1640(1);      
  35.     DIO=0;delay_tm1640(1);   
  36.     CLK=1;delay_tm1640(1);   
  37.     DIO=1;delay_tm1640(1);   
  38. }
  39. /******************************************************************************/
  40. void send_tm1640(unsigned char _data)
  41. {
  42.     unsigned char i=0;
  43.     CLK = 0; delay_tm1640(1);  
  44.     for( i=0;i<8;i++)
  45.     {        
  46.         if(_data&0x01)    {DIO = 1;delay_tm1640(1);}
  47.         else            {DIO = 0;delay_tm1640(1);}
  48.         CLK = 1;delay_tm1640(1);   
  49.         _data>>=1;   
  50.         CLK = 0;delay_tm1640(1);   
  51.     }
  52. }
  53. /******************************************************************************/

  54. void display_tm1640(void)
  55. {
  56.     u8 i;

  57.     start_tm1640();
  58.     send_tm1640( writedatamode_z);     //¡¾µØÖ·×Ô¶¯Ôö¼Ó¡¿    ¡¾Ð´ÏÔ´æ¡¿
  59.     stop_tm1640();

  60.     start_tm1640();
  61.     send_tm1640(startaddress);           //´Óc0HÆð
  62.     for(i=0;i<16;i++)
  63.     {
  64.         send_tm1640(dis_buf[i]);
  65.     }
  66.     stop_tm1640();

  67.     start_tm1640();
  68.     send_tm1640(disconmode);//´«ÏÔʾ¿ØÖÆÃüÁî
  69.     stop_tm1640();
  70. }
  71. /******************************************************************************/
¸´ÖÆ´úÂë
   ÌØÐÔ:
    ²ÉÓù¦ÂÊCMOS¹¤ÒÕ
    ÏÔʾģʽ£¨8¶Î¡Á16룩,Ö§³Ö¹²ÒõÊýÂë¹ÜÊä³ö
    »Ô¶Èµ÷½Úµç·£¨Õ¼¿Õ±È8¼¶¿Éµ÷£©
    Á½Ïß´®Ðнӿڣ¨CLK£¬DIN£©
    Õñµ´·½Ê½£ºÄÚÖÃRCÕñµ´£¨450KHz+5%£©
    ÄÚÖÃÉϵ縴λµç·
    ÄÚÖÃ×Ô¶¯ÏûÒþµç·
    ·â×°ÐÎʽ£ºSOP28

tm1640.h
  1. /******************************************************************************/
  2. #ifndef __tm1640_h__
  3. #define __tm1640_h__
  4. /******************************************************************************/
  5. #define seg         8
  6. #define grid         16

  7. /******************************************************************************/
  8. //ÏÔʾģʽÉèÖÃÃüÁî        0x00  TM1640²»Ö§³Ö
  9. /******************************************************************************/
  10. //#define dissetmode 0x00             //ÏÔʾģʽÉèÖà 4COM 13SEG
  11. //#define dissetmode 0x01             //ÏÔʾģʽÉèÖà 5COM 12SEG
  12. //#define dissetmode 0x02             //ÏÔʾģʽÉèÖà 6COM 11SEG
  13. //#define dissetmode 0x03              //ÏÔʾģʽÉèÖà 7COM 10SEG


  14. /******************************************************************************/
  15. //Êý¾ÝÃüÁîÉèÖà 0x40
  16. /******************************************************************************/
  17. //×Ô¶¯µØÖ·Ôö¼Ó                        bit2 = 0
  18. //¹Ì¶¨µØÖ·                                bit2 = 1
  19. #define writedatamode_z         0x40        //¡¾µØÖ·×Ô¶¯Ôö¼Ó¡¿        ¡¾Ð´ÏÔ´æ¡¿
  20. #define writedatamode_g         0x44        //¡¾¹Ì¶¨µØÖ·¡¿                 ¡¾Ð´ÏÔ´æ¡¿

  21. /******************************************************************************/
  22. //µØÖ·ÃüÁîÉèÖà       0XC0 + 16×Ö½ÚÊý¾Ý
  23. /******************************************************************************/
  24. //ÏÔʾµØÖ·0-16        ¶ÔÓ¦RGID1-16
  25. #define startaddress                 0xc0        //ÆðʼµØÖ·

  26. /******************************************************************************/
  27. //ÏÔʾ¿ØÖÆ                0x80
  28. /******************************************************************************/
  29. //ÉèÖÃÂö³å¿í¶ÈΪ1/16        bit210 = 0
  30. //ÉèÖÃÂö³å¿í¶ÈΪ2/16        bit210 = 1
  31. //ÉèÖÃÂö³å¿í¶ÈΪ4/16        bit210 = 2
  32. //ÉèÖÃÂö³å¿í¶ÈΪ10/16        bit210 = 3
  33. //ÉèÖÃÂö³å¿í¶ÈΪ11/16        bit210 = 4
  34. //ÉèÖÃÂö³å¿í¶ÈΪ12/16        bit210 = 5
  35. //ÉèÖÃÂö³å¿í¶ÈΪ13/16        bit210 = 6
  36. //ÉèÖÃÂö³å¿í¶ÈΪ14/16        bit210 = 7

  37. //ÏÔʾ¹Ø   bit3 = 0
  38. //ÏÔʾ¿ª   bit3 = 1

  39. //#define disconmode                         0x8b        //¡¾ÏÔʾ¿ª¡¿ ¡¾4/16 µã¿Õ±È¡¿
  40. //#define disconmode                         0x8c          //¡¾ÏÔʾ¿ª¡¿ ¡¾11/16 µã¿Õ±È¡¿
  41. #define disconmode                         0x8f         //¡¾ÏÔʾ¿ª¡¿ ¡¾14/16 µã¿Õ±È¡¿
  42. //#define        disp_off                        0x80                //¡¾ÏÔʾ¹Ø¡¿ ¡¾14/16 µã¿Õ±È¡¿
  43. //#define disp_pwm0               0x88            //¡¾ÏÔʾ¿ª¡¿ ¡¾1/16 µã¿Õ±È¡¿
  44. /******************************************************************************/

  45. #define datacount                         16      //²ÉÓõØÖ·×Ô¶¯¼ÓÒ»·½Ê½´«ÊäÊý¾ÝµÄ¸öÊý

  46. /******************************************************************************/
  47. #define     DIO P41
  48. #define     CLK P40
  49. /******************************************************************************/
  50. void          init_tm1640          (void);
  51. void        delay_tm1640        (u8 _delay_time);
  52. void        start_tm1640        (void);
  53. void        stop_tm1640                (void);
  54. void         send_tm1640                (unsigned char _data);

  55. void display_tm1640                (void);

  56. /******************************************************************************/
  57. #endif
  58. /******************************************************************************/
¸´ÖÆ´úÂë

ÖÐÎÄpdfÏÂÔØ: TM1640_datasheet.pdf (279.36 KB, ÏÂÔØ´ÎÊý: 141)
»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

ID:234818 ·¢±íÓÚ 2018-1-2 09:33 | ÏÔʾȫ²¿Â¥²ã
²»´í£¬Ñ§Ï°Ï ºÃ×ÊÁÏ£¬51ºÚÓÐÄã¸ü¾«²Ê!!!
»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

ID:382826 ·¢±íÓÚ 2018-9-22 12:01 | ÏÔʾȫ²¿Â¥²ã
ÊÇ51µÄµ¥Æ¬»úÓõÄÂð£¿Çë½ÌһϠÄúµÄ´úÂëÈçºÎÒÆÖ²?
»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

ID:302252 ·¢±íÓÚ 2019-1-2 15:59 | ÏÔʾȫ²¿Â¥²ã
ѧϰѧϰ£¡£¡
»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

ID:84776 ·¢±íÓÚ 2019-12-18 16:43 | ÏÔʾȫ²¿Â¥²ã
ºÃ×ÊÁÏ....
»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

ID:994319 ·¢±íÓÚ 2021-12-19 20:54 À´×ÔÊÖ»ú | ÏÔʾȫ²¿Â¥²ã
ÒÆÖ²³É¹¦ÁË£¬ÑÓʱº¯ÊýÄÇÀïÒª¸Ä£¬£¬ÆÁ±ÎÁ˼¸¸ö¶¨Ò庯ÊýµÄ´úÂ룬¸ÄÁËÏÂÊý×飬Ȼºó³É¹¦ÁË
»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

ID:991042 ·¢±íÓÚ 2023-11-13 11:53 | ÏÔʾȫ²¿Â¥²ã
gewenya ·¢±íÓÚ 2021-12-19 20:54
ÒÆÖ²³É¹¦ÁË£¬ÑÓʱº¯ÊýÇÀïÒª¸Ä£¬£¬ÆÁ±ÎÁ˼¸¸ö¶¨Ò庯ÊýµÄ´úÂ룬¸ÄÁËÏÂÊý×飬Ȼºó³É¹¦ÁË

ÇëÎÊÄ㶼¸ÄÁËɶ°¡   ÎҸIJ»¶¯
»Ø¸´

ʹÓõÀ¾ß ¾Ù±¨

ÄúÐèÒªµÇ¼ºó²Å¿ÉÒÔ»ØÌû µÇ¼ | Á¢¼´×¢²á

±¾°æ»ý·Ö¹æÔò

ÊÖ»ú°æ|СºÚÎÝ|51ºÚµç×ÓÂÛ̳ |51ºÚµç×ÓÂÛ̳6Ⱥ QQ ¹ÜÀíÔ±QQ:125739409;¼¼Êõ½»Á÷QQȺ281945664

Powered by µ¥Æ¬»ú½Ì³ÌÍø

¿ìËٻظ´ ·µ»Ø¶¥²¿ ·µ»ØÁбí