sumoon_yao 发表于 2020-10-7 10:55:56

NUCLEO-G474做的小信号采集控制项目:


行色匆匆 发表于 2020-10-7 12:18:09

以前学习I2C接口时做的液晶时钟

使用了一块STM32最小系统板、1602字符显示屏、I2C模块转串口模块、DS3231RTC模块,使用STM32作为主设备,RTC模块和将液晶屏作为从设备进行I2C通信。
将I2C模块转串口和RTC模块的SDA端子都连接到STM32的B6,然后将两个模块的SDA端子都连接到STM32的B7引脚,两个模块设置了I2C地址,使用这些地址来标识不同的模块。
代码如下:
#include <LiquidCrystal_I2C.h>
#include <DS3231_Simple.h>

LiquidCrystal_I2C lcd(0x27,16,2);
DS3231_Simple Clock;
volatile int flag=0;

void setup()
{
}

void loop()
{
    pinMode(PA0,INPUT_PULLUP);
    attachInterrupt(PA0, TimeADJ, CHANGE);
   
    Clock.begin();
    char *wk;
    lcd.init();
    lcd.backlight();

    int MyTemp;

    while(1)
    {
      DateTime MyTime = Clock.read();
      if (flag == 1){
            if (MyTime.Second >= 30) {
                ++MyTime.Minute;
            }
            MyTime.Second = 0;
            Clock.write(MyTime);
            flag = 0;
      }
      lcd.setCursor(0,0);
      lcd.print("20");
      lcd_Print(MyTime.Year);
      lcd.print("/");
      lcd_Print(MyTime.Month);
      lcd.print("/");
      lcd_Print(MyTime.Day);
      switch(MyTime.Dow){
            case 1:wk = "Mon"; break;
            case 2:wk = "Tue"; break;
            case 3:wk = "Wed"; break;
            case 4:wk = "Thu"; break;
            case 5:wk = "Fri"; break;
            case 6:wk = "Sat"; break;
            case 7:wk = "Sun";
      }
      lcd.setCursor(12,0);
      lcd.print(wk);
      lcd.setCursor(0,1);
      lcd_Print(MyTime.Hour);
      lcd.print(":");
      lcd_Print(MyTime.Minute);
      lcd.print(":");
      lcd_Print(MyTime.Second);
      MyTemp = Clock.getTemperatureFloat();
      lcd.setCursor(12,1);
      lcd.print(MyTemp);
      lcd.print("\xdf\x43");
      delay(100);
    }
}

void lcd_Print(int val)
{
    if(val < 10){
      lcd.print("0");
    }
    lcd.print(val);
}

void TimeADJ() {
    flag=1;
}

lebment 发表于 2020-10-7 19:18:22

本人最近制作的一款开发板

补充内容 (2020-10-7 19:18):
https://www.bilibili.com/video/BV1VA411J7kq

发表于 2020-10-9 11:27:08

五轴步进电机驱控板,核心stm32F407VET6。CAN总线,梯形S型加减速。

pythonworld 发表于 2020-10-10 21:08:12

STM32 温度湿度测量并用MQTT协议发送
一个很简单的功能用stm32采集温度传感器的数据,使用串口把数据发送给树莓派。
在树莓派上使用MQTT协议发送到MQTT服务器。可以通过手机或电脑远程获得。





补充内容 (2020-10-10 21:12):
直接使用的是STM32F103C8T6的USB虚拟串口,用一条USB数据线就可以连接树莓派。

andrewz 发表于 2020-10-16 10:53:50

感谢论坛,又获奖了
页: 1 2 [3]
查看完整版本: 『获奖公布』|中秋遇上国庆,惊喜享不停