Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
main.cpp@0:d024d4d62f2e, 2020-06-03 (annotated)
- Committer:
- sasakisho
- Date:
- Wed Jun 03 15:46:55 2020 +0000
- Revision:
- 0:d024d4d62f2e
version0
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| sasakisho | 0:d024d4d62f2e | 1 | /* ADコンバータであるMCP3204を使い,圧力センサP-7100からデータを取得するためのコード */ |
| sasakisho | 0:d024d4d62f2e | 2 | |
| sasakisho | 0:d024d4d62f2e | 3 | #include "mbed.h" |
| sasakisho | 0:d024d4d62f2e | 4 | |
| sasakisho | 0:d024d4d62f2e | 5 | SPI spi(p5, p6, p7); |
| sasakisho | 0:d024d4d62f2e | 6 | DigitalOut cs(p8); |
| sasakisho | 0:d024d4d62f2e | 7 | Timer t; |
| sasakisho | 0:d024d4d62f2e | 8 | |
| sasakisho | 0:d024d4d62f2e | 9 | Serial pc(USBTX, USBRX); |
| sasakisho | 0:d024d4d62f2e | 10 | |
| sasakisho | 0:d024d4d62f2e | 11 | int main() |
| sasakisho | 0:d024d4d62f2e | 12 | { |
| sasakisho | 0:d024d4d62f2e | 13 | // ADC val |
| sasakisho | 0:d024d4d62f2e | 14 | uint8_t high, low; |
| sasakisho | 0:d024d4d62f2e | 15 | double value, v, tp; |
| sasakisho | 0:d024d4d62f2e | 16 | |
| sasakisho | 0:d024d4d62f2e | 17 | //file val |
| sasakisho | 0:d024d4d62f2e | 18 | int i = 0, j = 0, k = 1000; |
| sasakisho | 0:d024d4d62f2e | 19 | double V[k], TP[k],T[k]; |
| sasakisho | 0:d024d4d62f2e | 20 | |
| sasakisho | 0:d024d4d62f2e | 21 | spi.format(7, 0); |
| sasakisho | 0:d024d4d62f2e | 22 | spi.frequency(1000000); |
| sasakisho | 0:d024d4d62f2e | 23 | |
| sasakisho | 0:d024d4d62f2e | 24 | pc.baud(460800); |
| sasakisho | 0:d024d4d62f2e | 25 | |
| sasakisho | 0:d024d4d62f2e | 26 | pc.printf("start!\n"); |
| sasakisho | 0:d024d4d62f2e | 27 | |
| sasakisho | 0:d024d4d62f2e | 28 | t.start(); |
| sasakisho | 0:d024d4d62f2e | 29 | |
| sasakisho | 0:d024d4d62f2e | 30 | while(j < 20) |
| sasakisho | 0:d024d4d62f2e | 31 | { |
| sasakisho | 0:d024d4d62f2e | 32 | |
| sasakisho | 0:d024d4d62f2e | 33 | while(i < k) |
| sasakisho | 0:d024d4d62f2e | 34 | { |
| sasakisho | 0:d024d4d62f2e | 35 | cs = 0; |
| sasakisho | 0:d024d4d62f2e | 36 | |
| sasakisho | 0:d024d4d62f2e | 37 | spi.write(0x60); //シングル |
| sasakisho | 0:d024d4d62f2e | 38 | //spi.write(0x40); //差動 |
| sasakisho | 0:d024d4d62f2e | 39 | |
| sasakisho | 0:d024d4d62f2e | 40 | high = spi.write(0x00); |
| sasakisho | 0:d024d4d62f2e | 41 | low = spi.write(0x00); |
| sasakisho | 0:d024d4d62f2e | 42 | |
| sasakisho | 0:d024d4d62f2e | 43 | low = (high << 5) | (low >> 2); |
| sasakisho | 0:d024d4d62f2e | 44 | high = high >> 3; |
| sasakisho | 0:d024d4d62f2e | 45 | |
| sasakisho | 0:d024d4d62f2e | 46 | value = (high << 8) | low; |
| sasakisho | 0:d024d4d62f2e | 47 | |
| sasakisho | 0:d024d4d62f2e | 48 | v = value / 4096 * 5.0; |
| sasakisho | 0:d024d4d62f2e | 49 | |
| sasakisho | 0:d024d4d62f2e | 50 | tp = 0.25 * v - 0.125; |
| sasakisho | 0:d024d4d62f2e | 51 | |
| sasakisho | 0:d024d4d62f2e | 52 | V[i] = v; |
| sasakisho | 0:d024d4d62f2e | 53 | TP[i] = tp; |
| sasakisho | 0:d024d4d62f2e | 54 | T[i] = t.read(); |
| sasakisho | 0:d024d4d62f2e | 55 | |
| sasakisho | 0:d024d4d62f2e | 56 | //pc.printf("sensor 0 value = %lf\n", value); |
| sasakisho | 0:d024d4d62f2e | 57 | |
| sasakisho | 0:d024d4d62f2e | 58 | cs = 1; |
| sasakisho | 0:d024d4d62f2e | 59 | |
| sasakisho | 0:d024d4d62f2e | 60 | i++; |
| sasakisho | 0:d024d4d62f2e | 61 | |
| sasakisho | 0:d024d4d62f2e | 62 | wait(0.009); |
| sasakisho | 0:d024d4d62f2e | 63 | } |
| sasakisho | 0:d024d4d62f2e | 64 | |
| sasakisho | 0:d024d4d62f2e | 65 | i = 0; |
| sasakisho | 0:d024d4d62f2e | 66 | |
| sasakisho | 0:d024d4d62f2e | 67 | while(i < k) |
| sasakisho | 0:d024d4d62f2e | 68 | { |
| sasakisho | 0:d024d4d62f2e | 69 | pc.printf("%f, %f, %f\n", T[i], V[i], TP[i]); |
| sasakisho | 0:d024d4d62f2e | 70 | |
| sasakisho | 0:d024d4d62f2e | 71 | i++; |
| sasakisho | 0:d024d4d62f2e | 72 | } |
| sasakisho | 0:d024d4d62f2e | 73 | |
| sasakisho | 0:d024d4d62f2e | 74 | i = 0; |
| sasakisho | 0:d024d4d62f2e | 75 | |
| sasakisho | 0:d024d4d62f2e | 76 | j++; |
| sasakisho | 0:d024d4d62f2e | 77 | |
| sasakisho | 0:d024d4d62f2e | 78 | } |
| sasakisho | 0:d024d4d62f2e | 79 | |
| sasakisho | 0:d024d4d62f2e | 80 | t.stop(); |
| sasakisho | 0:d024d4d62f2e | 81 | |
| sasakisho | 0:d024d4d62f2e | 82 | pc.printf("finish!"); |
| sasakisho | 0:d024d4d62f2e | 83 | } |