1.3寸和0.96寸IIC OLED SSD1106图形库显示
2021-05-12 09:44:00 17.5MB 1.3和0.96寸IIC图像显示
1
资源内有基于STM32的DS3231驱动,分别使用STM32模拟IIC与硬件IIC与DS3231通信,工程可使用Keil5 MDK直接打开,亲测可用。
2021-05-11 16:03:59 8.22MB DS3231 STM32 模拟IIC 硬件IIC
1
TCS3472_HAl_stm32f1程序
2021-05-11 14:03:02 15.98MB 颜色识别程序
1
使用verilog 编写基于XILINX的fpga模拟IIC,从器件为tca6416,PO/P1作为输出口使用。经过验证
2021-05-09 21:16:39 10.04MB iic 6416 fpga
1
关于七针0.96寸OLED使用IIC接口的说明,文档类型,压缩包
2021-05-09 13:17:36 1.91MB OLED 屏幕 iic
1
iic从机模块,执行效率还行可以10m主频的单片机最快可以接收到100K的速度。该模块需要资源,2个外部中断配置-上升下降沿中断,来模拟iic时序,芯片编译器的问题,对结构体不是很友好,所以这边没有使用结构体对变量打包,目前只实现了简单的接受和发送,不支持eeprom那种读写方式。
2021-05-08 13:34:28 118KB iic驱动
1
0.91寸显示屏-IIC硬件原理图
2021-05-08 13:03:26 19KB 0.91寸显示屏-IIC硬件原理
1
中景园电子0.96OLED显示屏_arduino_IIC_例程+SPI_例程工程源码: void Adafruit_SSD1306::startscrolldiagleft(uint8_t start, uint8_t stop){ ssd1306_command(SSD1306_SET_VERTICAL_SCROLL_AREA); ssd1306_command(0X00); ssd1306_command(SSD1306_LCDHEIGHT); ssd1306_command(SSD1306_VERTICAL_AND_LEFT_HORIZONTAL_SCROLL); ssd1306_command(0X00); ssd1306_command(start); ssd1306_command(0X00); ssd1306_command(stop); ssd1306_command(0X01); ssd1306_command(SSD1306_ACTIVATE_SCROLL); } void Adafruit_SSD1306::stopscroll(void){ ssd1306_command(SSD1306_DEACTIVATE_SCROLL); } void Adafruit_SSD1306::ssd1306_data(uint8_t c) { if (sid != -1) { // SPI //digitalWrite(cs, HIGH); *csport |= cspinmask; //digitalWrite(dc, HIGH); *dcport |= dcpinmask; //digitalWrite(cs, LOW); *csport &= ~cspinmask; fastSPIwrite(c); //digitalWrite(cs, HIGH); *csport |= cspinmask; } else { // I2C uint8_t control = 0x40; // Co = 0, D/C = 1 Wire.beginTransmission(_i2caddr); Wire.write(control); Wire.write(c); Wire.endTransmission(); } } void Adafruit_SSD1306::display(void) { ssd1306_command(SSD1306_SETLOWCOLUMN | 0x0); // low col = 0 ssd1306_command(SSD1306_SETHIGHCOLUMN | 0x0); // hi col = 0 ssd1306_command(SSD1306_SETSTARTLINE | 0x0); // line #0 if (sid != -1) { // SPI *csport |= cspinmask; *dcport |= dcpinmask; *csport &= ~cspinmask; for (uint16_t i=0; i<(SSD1306_LCDWIDTH*SSD1306_LCDHEIGHT/8); i++) { fastSPIwrite(buffer[i]); //ssd1306_data(buffer[i]); } // i wonder why we have to do this (check datasheet) if (SSD1306_LCDHEIGHT == 32) { for (uint16_t i=0; i<(SSD1306_LCDWIDTH*SSD1306_LCDHEIGHT/8); i++) { //ssd1306_data(0); fastSPIwrite(0); } } *csport |= cspinmask; } else { // save I2C bitrate uint8_t twbrbackup = TWBR; TWBR = 12; // upgrade to 400KHz! //Serial.println(TWBR, DEC); //Serial.println(TWSR & 0x3, DEC); // I2C
中景园电子0.96OLED显示屏_C51系列测试程序 IIC_例程+SPI_例程工程源码: 中景园电子0.96OLED显示屏_C51系列_IIC_例程推荐使用 中景园电子0.96OLED显示屏_C51系列_IIC_例程推荐使用.zip 中景园电子0.96OLED显示屏_C51系列_IIC应答_例程 中景园电子0.96OLED显示屏_C51系列_IIC无应答_例程 中景园电子0.96OLED显示屏_C51系列_SPI_例程
看了好多天的协议,ads1100的手册。亲自上板测过,有需要的拿去,借鉴一下,网上都是c的ads1100,太不方便了
2021-05-07 15:38:47 5KB ads1100 iic 模数转换
1