Liqun Wu / Mbed 2 deprecated 90418_mbed_controller

Dependencies:   mbed

Committer:
wuliqunyy
Date:
Mon Jan 17 13:20:09 2022 +0000
Revision:
0:be95bfb06686
a working non_flat + adc_didt for ehp regulation version

Who changed what in which revision?

UserRevisionLine numberNew contents of line
wuliqunyy 0:be95bfb06686 1 #include "uart_mbed.h"
wuliqunyy 0:be95bfb06686 2 #include "mbed.h"
wuliqunyy 0:be95bfb06686 3 #include "scpi/scpi.h"
wuliqunyy 0:be95bfb06686 4
wuliqunyy 0:be95bfb06686 5
wuliqunyy 0:be95bfb06686 6 // Serial pc(USBTX, USBRX); // tx, rx
wuliqunyy 0:be95bfb06686 7
wuliqunyy 0:be95bfb06686 8 void uart_print(char *buffer){
wuliqunyy 0:be95bfb06686 9 printf("RAM_ADDR:%02X MByte:%02X LByte:%02X'\n", *buffer, *(buffer+1),*(buffer+2));
wuliqunyy 0:be95bfb06686 10 }
wuliqunyy 0:be95bfb06686 11
wuliqunyy 0:be95bfb06686 12 void uart_read(char *buffer){
wuliqunyy 0:be95bfb06686 13 gets(buffer);
wuliqunyy 0:be95bfb06686 14 }
wuliqunyy 0:be95bfb06686 15
wuliqunyy 0:be95bfb06686 16 void uart_write(char *buffer){
wuliqunyy 0:be95bfb06686 17 printf(buffer);
wuliqunyy 0:be95bfb06686 18 }
wuliqunyy 0:be95bfb06686 19
wuliqunyy 0:be95bfb06686 20 void uart_start(){
wuliqunyy 0:be95bfb06686 21 printf("data_start\n");
wuliqunyy 0:be95bfb06686 22 }
wuliqunyy 0:be95bfb06686 23
wuliqunyy 0:be95bfb06686 24 void uart_I2C_test_pass(){
wuliqunyy 0:be95bfb06686 25 printf("i2c_test_pass, ready!\n");
wuliqunyy 0:be95bfb06686 26 }
wuliqunyy 0:be95bfb06686 27
wuliqunyy 0:be95bfb06686 28 void uart_I2C_test_fail(){
wuliqunyy 0:be95bfb06686 29 printf("i2c_test_fail\n");
wuliqunyy 0:be95bfb06686 30 }
wuliqunyy 0:be95bfb06686 31
wuliqunyy 0:be95bfb06686 32 void uart_ram_dump_finish(){
wuliqunyy 0:be95bfb06686 33 printf("dump_finish\n");
wuliqunyy 0:be95bfb06686 34 }
wuliqunyy 0:be95bfb06686 35
wuliqunyy 0:be95bfb06686 36 int SCPI_Error(scpi_t * context, int_fast16_t err) {
wuliqunyy 0:be95bfb06686 37 (void) context;
wuliqunyy 0:be95bfb06686 38
wuliqunyy 0:be95bfb06686 39 printf("**ERROR: %d, \"%s\"\r\n", (int32_t) err, SCPI_ErrorTranslate(err));
wuliqunyy 0:be95bfb06686 40 return 0;
wuliqunyy 0:be95bfb06686 41 }
wuliqunyy 0:be95bfb06686 42
wuliqunyy 0:be95bfb06686 43 size_t SCPI_Write(scpi_t * context, const char * data, size_t len) {
wuliqunyy 0:be95bfb06686 44 (void) context;
wuliqunyy 0:be95bfb06686 45 return fwrite(data, 1, len, stdout);
wuliqunyy 0:be95bfb06686 46 }
wuliqunyy 0:be95bfb06686 47
wuliqunyy 0:be95bfb06686 48 scpi_result_t SCPI_Flush(scpi_t * context) {
wuliqunyy 0:be95bfb06686 49 fflush(stdout);
wuliqunyy 0:be95bfb06686 50 return SCPI_RES_OK;
wuliqunyy 0:be95bfb06686 51 }
wuliqunyy 0:be95bfb06686 52
wuliqunyy 0:be95bfb06686 53 /**
wuliqunyy 0:be95bfb06686 54 * Return 0 as OK and other number as error
wuliqunyy 0:be95bfb06686 55 */
wuliqunyy 0:be95bfb06686 56 scpi_result_t SCPI_Test(scpi_t * context) {
wuliqunyy 0:be95bfb06686 57 printf("**Test\r\n");
wuliqunyy 0:be95bfb06686 58 return (scpi_result_t)0;
wuliqunyy 0:be95bfb06686 59 }
wuliqunyy 0:be95bfb06686 60
wuliqunyy 0:be95bfb06686 61 extern "C" void mbed_reset();
wuliqunyy 0:be95bfb06686 62
wuliqunyy 0:be95bfb06686 63 scpi_result_t SCPI_Reset(scpi_t * context)
wuliqunyy 0:be95bfb06686 64 {
wuliqunyy 0:be95bfb06686 65 mbed_reset();
wuliqunyy 0:be95bfb06686 66 printf("**Reset\r\n");
wuliqunyy 0:be95bfb06686 67 return SCPI_RES_OK;
wuliqunyy 0:be95bfb06686 68 }
wuliqunyy 0:be95bfb06686 69
wuliqunyy 0:be95bfb06686 70 scpi_result_t SCPI_Control(scpi_t * context, scpi_ctrl_name_t ctrl, scpi_reg_val_t val) {
wuliqunyy 0:be95bfb06686 71 if (SCPI_CTRL_SRQ == ctrl) {
wuliqunyy 0:be95bfb06686 72 printf("**SRQ: 0x%X (%d)\r\n", val, val);
wuliqunyy 0:be95bfb06686 73 } else {
wuliqunyy 0:be95bfb06686 74 printf("**CTRL %02x: 0x%X (%d)\r\n", ctrl, val, val);
wuliqunyy 0:be95bfb06686 75 }
wuliqunyy 0:be95bfb06686 76 return SCPI_RES_OK;
wuliqunyy 0:be95bfb06686 77 }
wuliqunyy 0:be95bfb06686 78
wuliqunyy 0:be95bfb06686 79