<wbr id="9qp22"><legend id="9qp22"><rt id="9qp22"></rt></legend></wbr>
<th id="9qp22"><noframes id="9qp22"><form id="9qp22"></form></noframes></th>

      <dd id="9qp22"><big id="9qp22"><video id="9qp22"></video></big></dd>
      <th id="9qp22"></th>
        <rp id="9qp22"><acronym id="9qp22"></acronym></rp>
        <dd id="9qp22"><pre id="9qp22"></pre></dd>

        1. <dd id="9qp22"><pre id="9qp22"></pre></dd>
          1. 打印

            [綜合信息] 【HC32L136 demo板】+MAX7219

            [復制鏈接]
            292|37
            跳轉到指定樓層
            樓主
            今晚又寫了一個MAX7219的小程序,開發環境是KEIL。代碼:
            #include "gpio.h"

            /******************************************************************************
            * Local pre-processor symbols/macros ('#define')
            ******************************************************************************/

            /******************************************************************************
            * Global variable definitions (declared in header file with 'extern')
            ******************************************************************************/
            #define uchar unsigned char
            #define uint unsigned int
            /******************************************************************************
            * Local type definitions ('typedef')
            ******************************************************************************/

            /******************************************************************************
            * Local function prototypes ('static')
            ******************************************************************************/

            /******************************************************************************
            * Local variable definitions ('static')                                      *
            ******************************************************************************/

            /******************************************************************************
            * Local pre-processor symbols/macros ('#define')
            ******************************************************************************/


            #define CLK_0           Gpio_ClrIO(GpioPortB, GpioPin5)
            #define CLK_1           Gpio_SetIO(GpioPortB, GpioPin5)
            #define LOAD_0           Gpio_ClrIO(GpioPortB, GpioPin7)
            #define LOAD_1           Gpio_SetIO(GpioPortB, GpioPin7)
            #define DIN_0           Gpio_ClrIO(GpioPortB, GpioPin8)
            #define DIN_1           Gpio_SetIO(GpioPortB, GpioPin8)

            #define NoOp   0x00           //空操作寄存器
            #define Digit0 0x01           // 數碼管1寄存器
            #define Digit1 0x02           // 數碼管2寄存器
            #define Digit2 0x03           // 數碼管3寄存器
            #define Digit3 0x04           // 數碼管4寄存器
            #define Digit4 0x05           // 數碼管5寄存器
            #define Digit5 0x06           // 數碼管6寄存器
            #define Digit6 0x07           // 數碼管7寄存器
            #define Digit7 0x08           // 數碼管8寄存器

            #define DecodeMode 0x09       // 譯碼模式寄存器
            #define Intensity 0x0a        // 亮度寄存器
            #define ScanLimit 0x0b        // 掃描位數寄存器
            #define ShutDown 0x0c         // 低功耗模式寄存器

            #define DisplayTest 0x0f      // 顯示測試寄存器
            #define ShutdownMode 0x00     // 低功耗方式
            #define NormalOperation 0x01  // 正常操作方式
            #define ScanDigit 0x07        // 掃描位數設置,顯示8位數碼管
            #define DecodeDigit 0xff      // 譯碼設置,8位均為BCD碼
            #define IntensityGrade 0x0a   // 亮度級別設置
            #define TestMode 0x01         // 顯示測試模式
            #define TextEnd 0x00          // 顯示測試結束,恢復正常工作模式

            /*****************************************************************************
            * Function implementation - global ('extern') and local ('static')
            ******************************************************************************/
            uchar DisBuffer[8]={0,0,0,0,0,0,0,0};    // 顯示緩存區
            //******************延時t毫秒**************************************
            void delay(uint t)
            {
                   uint i;
                   while(t--)
                   {
                          /* 對于12M時鐘,約延時1ms */
                          for (i=0;i<125;i++)
                          {}
                   }
            }
            //*************向MAX7219寫入字節(8位)********************
            void SendChar (uchar ch)
            {
                uchar i,temp;
                delay(1);
                for (i=0;i<8;i++)
                {
                     temp=ch&0x80;
                     ch=ch<<1;
                     if(temp)
                     {
                        DIN_1;
                        CLK_0;
                        CLK_1;
                     }
                     else
                     {
                        DIN_0;
                        CLK_0;
                        CLK_1;
                     }
                }
            }
            //**************向MAX7219寫入字(16位)*****************************
            void WriteWord (uchar addr,uchar num)
            {
                LOAD_0;
                delay(1);
                SendChar(addr);
                delay(1);
                SendChar(num);
                delay(1);
                LOAD_1;                            // 鎖存進相應寄存器
            }
            //*********************** MAX7219初始化 ******************
            void InitDisplay (void)
            {
                WriteWord (ScanLimit,ScanDigit);         // 設置掃描界限
                WriteWord (DecodeMode,DecodeDigit);      // 設置譯碼模式
                WriteWord (Intensity,IntensityGrade);    // 設置亮度
                WriteWord (ShutDown,NormalOperation);    // 設置為正常工作模式

            }




            /**
            ******************************************************************************
            ** \brief  Main function of project
            **
            ** \return uint32_t return value, if needed
            **
            ** This sample
            **
            ******************************************************************************/
            int32_t main(void)
            {
                stc_gpio_config_t pstcGpioCfg;

                ///< 打開GPIO外設時鐘門控
                Sysctrl_SetPeripheralGate(SysctrlPeripheralGpio, TRUE);

                ///< 端口方向配置->輸出
                pstcGpioCfg.enDir = GpioDirOut;
                ///< 端口驅動能力配置->高驅動能力
                pstcGpioCfg.enDrv = GpioDrvH;
                ///< 端口上下拉配置->無上下拉
                pstcGpioCfg.enPuPd = GpioNoPuPd;
                ///< 端口開漏輸出配置->開漏輸出關閉
                pstcGpioCfg.enOD = GpioOdDisable;
                ///< 端口輸入/輸出值寄存器總線控制模式配置->AHB
                pstcGpioCfg.enCtrlMode = GpioAHB;

                ///< GPIO IO PD05初始化(PD05在STK上外接LED)
                Gpio_Init(GpioPortD, GpioPin5, &pstcGpioCfg);
                Gpio_Init(GpioPortB, GpioPin5, &pstcGpioCfg);
                            Gpio_Init(GpioPortB, GpioPin7, &pstcGpioCfg);
                Gpio_Init(GpioPortB, GpioPin8, &pstcGpioCfg);
                            InitDisplay (); // MAX7219初始化
                WriteWord(DisplayTest,TestMode);  // 開始顯示測試,點亮所有LED
                delay(1500);                      // 延時約1.5s
                WriteWord (DisplayTest,TextEnd);  // 退出顯示測試模式
                WriteWord (Digit0,0);
                WriteWord (Digit1,1);
                WriteWord (Digit2,2);
                WriteWord (Digit3,3);
                while(1)
                {
            。。。。。。。。。。。。。。。。。。。。。。。。。。
            效果圖:

            另,這個MAX7219小板子是我自己做著玩的。
            原理圖如下:





            使用特權

            評論回復
            沙發
            | 2019-9-26 09:17 | 只看該作者
            厲害了小哥哥

            使用特權

            評論回復
            板凳
             樓主 | 2019-9-26 10:33 | 只看該作者

            不厲害,我是個小菜鳥

            使用特權

            評論回復
            地板
            | 2019-9-27 09:24 | 只看該作者
            Cjy_JDxy 發表于 2019-9-26 10:33
            不厲害,我是個小菜鳥

            頭像不錯~

            使用特權

            評論回復
            5
            | 2019-9-27 14:33 | 只看該作者
            你棒哦 為你點贊

            使用特權

            評論回復
            6
             樓主 | 2019-9-27 14:42 | 只看該作者

            謝謝!

            使用特權

            評論回復
            7
            | 2019-10-3 10:37 | 只看該作者
            謝謝分享!

            使用特權

            評論回復
            8
            | 2019-10-6 17:14 | 只看該作者
            HC32L136 性能怎么樣呢     

            使用特權

            評論回復
            9
            | 2019-10-6 17:14 | 只看該作者
            多位LED 顯示驅動器?         

            使用特權

            評論回復
            10
            | 2019-10-6 17:14 | 只看該作者
            max7219與74hc595區別 是什么?   

            使用特權

            評論回復
            11
            | 2019-10-6 17:15 | 只看該作者
            謝謝樓主的資料了。   

            使用特權

            評論回復
            12
            | 2019-10-6 17:15 | 只看該作者
            這個確實厲害了。   

            使用特權

            評論回復
            13
            | 2019-10-6 17:15 | 只看該作者
            還有其他的分享嗎?   

            使用特權

            評論回復
            14
            | 2019-10-6 17:16 | 只看該作者
            三極管一樣驅動吧   

            使用特權

            評論回復
            15
            | 2019-10-6 17:16 | 只看該作者
            謝謝樓主的分享。      

            使用特權

            評論回復
            16
            | 2019-10-6 17:16 | 只看該作者
            HC32L136 demo  

            使用特權

            評論回復
            17
            | 2019-10-6 17:17 | 只看該作者
            MAX7219的小程序   

            使用特權

            評論回復
            18
            | 2019-10-6 17:17 | 只看該作者
            串行接口傳送數據吧   

            使用特權

            評論回復
            19
            | 2019-10-6 17:17 | 只看該作者
            這個讀取的速度快嗎?   

            使用特權

            評論回復
            20
            | 2019-10-6 17:17 | 只看該作者
            IAR可以開發嗎?   

            使用特權

            評論回復
            掃描二維碼,隨時隨地手機跟帖
            您需要登錄后才可以回帖 登錄 | 注冊

            本版積分規則

            我要發帖 投訴建議 創建版塊 申請版主

            快速回復

            您需要登錄后才可以回帖
            登錄 | 注冊
            高級模式

            論壇熱帖

            在線客服 快速回復 返回頂部 返回列表
            成人短片线上看