MCP3204をSTM303K8T6で同時に6個使ってみた
Dependencies: mbed 24LC1025 MCP3204
Diff: main.cpp
- Revision:
- 1:717563cb9070
- Parent:
- 0:c38491379a28
- Child:
- 2:133b3bf22850
diff -r c38491379a28 -r 717563cb9070 main.cpp --- a/main.cpp Fri Jul 24 12:05:21 2020 +0000 +++ b/main.cpp Sat Jul 25 17:49:49 2020 +0000 @@ -1,29 +1,112 @@ #include "mbed.h" #include "MCP3204.h" -Serial pc(PA_9, PA_10, 115200); //pin19,20 TX,RX +Serial pc(PA_2, PA_3, 115200); //pin19,20 TX,RX SPI spi(PA_7, PA_6, PA_5); MCP3204 mcp1(spi,PB_0); MCP3204 mcp2(spi,PB_1); +MCP3204 mcp3(spi,PB_3); +MCP3204 mcp4(spi,PA_8); +MCP3204 mcp5(spi,PA_10); +MCP3204 mcp6(spi,PF_0); + + +#define T 0.03 int main(){ - int adc[4]; + int adc1[4],adc2[4],adc3[4],adc4[4],adc5[4],adc6[4]; int i; + float ave1,ave2,ave3,ave4,ave5,ave6; pc.printf("Hello world\r\n"); wait(1.0); while(1){ - adc[0] = mcp1.sgl( CH0 ); - adc[1] = mcp2.sgl( CH0 ); - //adc[2] = mcp.sgl( CH2 ); - //adc[3] = mcp.sgl( CH3 ); - for(i=0; i<2; i++){ - pc.printf("CH%d:%d\r\n",i,adc[i]); + adc1[0] = mcp1.sgl( CH0 ); + adc1[1] = mcp1.sgl( CH1 ); + adc1[2] = mcp1.sgl( CH2 ); + adc1[3] = mcp1.sgl( CH3 ); + ave1 = (adc1[0] + adc1[1] + adc1[2] + adc1[3])/4.0; + + adc2[0] = mcp2.sgl( CH0 ); + adc2[1] = mcp2.sgl( CH1 ); + adc2[2] = mcp2.sgl( CH2 ); + adc2[3] = mcp2.sgl( CH3 ); + ave2 = (adc2[0] + adc2[1] + adc2[2] + adc2[3])/4.0; + + adc3[0] = mcp3.sgl( CH0 ); + adc3[1] = mcp3.sgl( CH1 ); + adc3[2] = mcp3.sgl( CH2 ); + adc3[3] = mcp3.sgl( CH3 ); + ave3 = (adc3[0] + adc3[1] + adc3[2] + adc3[3])/4.0; + + adc4[0] = mcp4.sgl( CH0 ); + adc4[1] = mcp4.sgl( CH1 ); + adc4[2] = mcp4.sgl( CH2 ); + adc4[3] = mcp4.sgl( CH3 ); + ave4 = (adc4[0] + adc4[1] + adc4[2] + adc4[3])/4.0; + + adc5[0] = mcp5.sgl( CH0 ); + adc5[1] = mcp5.sgl( CH1 ); + adc5[2] = mcp5.sgl( CH2 ); + adc5[3] = mcp5.sgl( CH3 ); + ave5 = (adc5[0] + adc5[1] + adc5[2] + adc5[3])/4.0; + + adc6[0] = mcp6.sgl( CH0 ); + adc6[1] = mcp6.sgl( CH1 ); + adc6[2] = mcp6.sgl( CH2 ); + adc6[3] = mcp6.sgl( CH3 ); + ave6 = (adc6[0] + adc6[1] + adc6[2] + adc6[3])/4.0; + + /* + pc.printf("1"); + for(i=0; i<4; i++){ + //pc.printf("CH%d:%d\r\n",i,adc1[i]); + pc.printf(",%d",adc1[i]); } + pc.printf(",%.1f\r\n", ave1); + + pc.printf("2"); + for(i=0; i<4; i++){ + //pc.printf("CH%d:%d\r\n",i,adc1[i]); + pc.printf(",%d",adc2[i]); + } + pc.printf(",%.1f\r\n", ave2); + + pc.printf("3"); + for(i=0; i<4; i++){ + //pc.printf("CH%d:%d\r\n",i,adc1[i]); + pc.printf(",%d",adc3[i]); + } + pc.printf(",%.1f\r\n", ave3); + + pc.printf("4"); + for(i=0; i<4; i++){ + //pc.printf("CH%d:%d\r\n",i,adc1[i]); + pc.printf(",%d",adc4[i]); + } + pc.printf(",%.1f\r\n", ave4); + + pc.printf("5"); + for(i=0; i<4; i++){ + //pc.printf("CH%d:%d\r\n",i,adc1[i]); + pc.printf(",%d",adc5[i]); + } + pc.printf(",%.1f\r\n", ave5); + + pc.printf("6"); + for(i=0; i<4; i++){ + //pc.printf("CH%d:%d\r\n",i,adc1[i]); + pc.printf(",%d",adc6[i]); + } + pc.printf(",%.1f\r\n", ave6); + */ + + pc.printf("%.1f,%.1f,%.1f,%.1f,%.1f,%.1f\r\n",ave1,ave2,ave3,ave4,ave5,ave6); + wait(0.5); } - + } /*