PSOC4都只支持最多2个SCB模块吗?
如果想使用一个UART+一个I2C+一个SPI应该怎么办?
要做一个“智能”太阳能蓝牙室内外温湿度监测实验
EH_Motherboard开板上边集成了一颗SI7020温湿度传感器
使用I2C连接
传感器使用固定地址0x40(不可修改)
可以放在室内来检测室内温湿度情况
现在要再添加一课SI7020传感器
放在室外
因为都是0x40地址
所以就不能把他们放在同一条I2C总线上了
现在准备再开辟一条I2C总线
把另一颗SI7020连接上
在C:\Program Files (x86)\Cypress\Solar-Powered IoT Device Kit\1.0\Firmware下有一个EH_Motherboard的文件夹
包含了开发板的测试程序
把它复制到别外
取消文件的只读属性
使用PSoC Creato(需要提前安装)打开EH_Motherboard.cyprj工程文件
会看到左边有两个工程
UART_Bootloader是用串口下程序的要先编译它
编译完成后就可以编译EH_Motherboard工程了
编译全部通过
说明官方文件没有问题
打开TopDesign.cysch看到原来已经有一个I2C模块,叫I2CM现在准备再添加一个I2CM1的模块
拖动右边Cypress Component Catalog框里的Communications下的I2C下的I2C(SCB mode)到左边I2C Interface框里
系统会自动将模块命名为I2C_1,
双击I2C_1把名称改为I2CM1
Mode改为Master
点Ok
打开EH_Motherbord.cydwr
给I2CM1的SCL和SDA分配对应的PIN脚
我分配的是PIN11和PIN12
然后再编译项目
发现有三条错误
第一条是把太多的时钟分配给了SCB组件?
第二条是最多只允许使用2个SCB模块而我却使用了3个?
查看数据手册发现PSOC4都只支持最多2个SCB模块
因为工程中已经使用了一个UART和一个I2C
所以再添加就超了
查了一些资料还没找到解决办法