presque fonctionnel
This commit is contained in:
		
							parent
							
								
									c21dab75ff
								
							
						
					
					
						commit
						c6c886d1cb
					
				
							
								
								
									
										38
									
								
								cdc_app.c
									
									
									
									
									
								
							
							
						
						
									
										38
									
								
								cdc_app.c
									
									
									
									
									
								
							| @ -85,29 +85,35 @@ void tuh_cdc_rx_cb(uint8_t idx) | |||||||
|   printf((char*) buf); |   printf((char*) buf); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void tuh_cdc_mount_cb(uint8_t idx) | // Invoked when a device with CDC interface is mounted
 | ||||||
| { | // idx is index of cdc interface in the internal pool.
 | ||||||
|   tuh_cdc_itf_info_t itf_info = { 0 }; | void tuh_cdc_mount_cb(uint8_t idx) { | ||||||
|  |   tuh_itf_info_t itf_info = {0}; | ||||||
|   tuh_cdc_itf_get_info(idx, &itf_info); |   tuh_cdc_itf_get_info(idx, &itf_info); | ||||||
| 
 | 
 | ||||||
|   printf("CDC Interface is mounted: address = %u, itf_num = %u\r\n", itf_info.daddr, itf_info.bInterfaceNumber); |   printf("CDC Interface is mounted: address = %u, itf_num = %u\r\n", itf_info.daddr, | ||||||
|  |          itf_info.desc.bInterfaceNumber); | ||||||
| 
 | 
 | ||||||
| #ifdef CFG_TUH_CDC_LINE_CODING_ON_ENUM | #ifdef CFG_TUH_CDC_LINE_CODING_ON_ENUM | ||||||
|   // CFG_TUH_CDC_LINE_CODING_ON_ENUM must be defined for line coding is set by tinyusb in enumeration
 |   // If CFG_TUH_CDC_LINE_CODING_ON_ENUM is defined, line coding will be set by tinyusb stack
 | ||||||
|   // otherwise you need to call tuh_cdc_set_line_coding() first
 |   // while eneumerating new cdc device
 | ||||||
|   cdc_line_coding_t line_coding = { 0 }; |   cdc_line_coding_t line_coding = {0}; | ||||||
|   if ( tuh_cdc_get_local_line_coding(idx, &line_coding) ) |   if (tuh_cdc_get_local_line_coding(idx, &line_coding)) { | ||||||
|   { |     printf("  Baudrate: %" PRIu32 ", Stop Bits : %u\r\n", line_coding.bit_rate, line_coding.stop_bits); | ||||||
|     printf("  Baudrate: %lu, Stop Bits : %u\r\n", line_coding.bit_rate, line_coding.stop_bits); |     printf("  Parity  : %u, Data Width: %u\r\n", line_coding.parity, line_coding.data_bits); | ||||||
|     printf("  Parity  : %u, Data Width: %u\r\n", line_coding.parity  , line_coding.data_bits); |  | ||||||
|   } |   } | ||||||
|  | #else | ||||||
|  |   // Set Line Coding upon mounted
 | ||||||
|  |   cdc_line_coding_t new_line_coding = { 115200, CDC_LINE_CODING_STOP_BITS_1, CDC_LINE_CODING_PARITY_NONE, 8 }; | ||||||
|  |   tuh_cdc_set_line_coding(idx, &new_line_coding, NULL, 0); | ||||||
| #endif | #endif | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| void tuh_cdc_umount_cb(uint8_t idx) | // Invoked when a device with CDC interface is unmounted
 | ||||||
| { | void tuh_cdc_umount_cb(uint8_t idx) { | ||||||
|   tuh_cdc_itf_info_t itf_info = { 0 }; |   tuh_itf_info_t itf_info = {0}; | ||||||
|   tuh_cdc_itf_get_info(idx, &itf_info); |   tuh_cdc_itf_get_info(idx, &itf_info); | ||||||
| 
 | 
 | ||||||
|   printf("CDC Interface is unmounted: address = %u, itf_num = %u\r\n", itf_info.daddr, itf_info.bInterfaceNumber); |   printf("CDC Interface is unmounted: address = %u, itf_num = %u\r\n", itf_info.daddr, | ||||||
| } |          itf_info.desc.bInterfaceNumber); | ||||||
|  | } | ||||||
							
								
								
									
										62
									
								
								pico_sdk_import.cmake
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								pico_sdk_import.cmake
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,62 @@ | |||||||
|  | # This is a copy of <PICO_SDK_PATH>/external/pico_sdk_import.cmake | ||||||
|  | 
 | ||||||
|  | # This can be dropped into an external project to help locate this SDK | ||||||
|  | # It should be include()ed prior to project() | ||||||
|  | 
 | ||||||
|  | if (DEFINED ENV{PICO_SDK_PATH} AND (NOT PICO_SDK_PATH)) | ||||||
|  |     set(PICO_SDK_PATH $ENV{PICO_SDK_PATH}) | ||||||
|  |     message("Using PICO_SDK_PATH from environment ('${PICO_SDK_PATH}')") | ||||||
|  | endif () | ||||||
|  | 
 | ||||||
|  | if (DEFINED ENV{PICO_SDK_FETCH_FROM_GIT} AND (NOT PICO_SDK_FETCH_FROM_GIT)) | ||||||
|  |     set(PICO_SDK_FETCH_FROM_GIT $ENV{PICO_SDK_FETCH_FROM_GIT}) | ||||||
|  |     message("Using PICO_SDK_FETCH_FROM_GIT from environment ('${PICO_SDK_FETCH_FROM_GIT}')") | ||||||
|  | endif () | ||||||
|  | 
 | ||||||
|  | if (DEFINED ENV{PICO_SDK_FETCH_FROM_GIT_PATH} AND (NOT PICO_SDK_FETCH_FROM_GIT_PATH)) | ||||||
|  |     set(PICO_SDK_FETCH_FROM_GIT_PATH $ENV{PICO_SDK_FETCH_FROM_GIT_PATH}) | ||||||
|  |     message("Using PICO_SDK_FETCH_FROM_GIT_PATH from environment ('${PICO_SDK_FETCH_FROM_GIT_PATH}')") | ||||||
|  | endif () | ||||||
|  | 
 | ||||||
|  | set(PICO_SDK_PATH "${PICO_SDK_PATH}" CACHE PATH "Path to the Raspberry Pi Pico SDK") | ||||||
|  | set(PICO_SDK_FETCH_FROM_GIT "${PICO_SDK_FETCH_FROM_GIT}" CACHE BOOL "Set to ON to fetch copy of SDK from git if not otherwise locatable") | ||||||
|  | set(PICO_SDK_FETCH_FROM_GIT_PATH "${PICO_SDK_FETCH_FROM_GIT_PATH}" CACHE FILEPATH "location to download SDK") | ||||||
|  | 
 | ||||||
|  | if (NOT PICO_SDK_PATH) | ||||||
|  |     if (PICO_SDK_FETCH_FROM_GIT) | ||||||
|  |         include(FetchContent) | ||||||
|  |         set(FETCHCONTENT_BASE_DIR_SAVE ${FETCHCONTENT_BASE_DIR}) | ||||||
|  |         if (PICO_SDK_FETCH_FROM_GIT_PATH) | ||||||
|  |             get_filename_component(FETCHCONTENT_BASE_DIR "${PICO_SDK_FETCH_FROM_GIT_PATH}" REALPATH BASE_DIR "${CMAKE_SOURCE_DIR}") | ||||||
|  |         endif () | ||||||
|  |         FetchContent_Declare( | ||||||
|  |                 pico_sdk | ||||||
|  |                 GIT_REPOSITORY https://github.com/raspberrypi/pico-sdk | ||||||
|  |                 GIT_TAG master | ||||||
|  |         ) | ||||||
|  |         if (NOT pico_sdk) | ||||||
|  |             message("Downloading Raspberry Pi Pico SDK") | ||||||
|  |             FetchContent_Populate(pico_sdk) | ||||||
|  |             set(PICO_SDK_PATH ${pico_sdk_SOURCE_DIR}) | ||||||
|  |         endif () | ||||||
|  |         set(FETCHCONTENT_BASE_DIR ${FETCHCONTENT_BASE_DIR_SAVE}) | ||||||
|  |     else () | ||||||
|  |         message(FATAL_ERROR | ||||||
|  |                 "SDK location was not specified. Please set PICO_SDK_PATH or set PICO_SDK_FETCH_FROM_GIT to on to fetch from git." | ||||||
|  |                 ) | ||||||
|  |     endif () | ||||||
|  | endif () | ||||||
|  | 
 | ||||||
|  | get_filename_component(PICO_SDK_PATH "${PICO_SDK_PATH}" REALPATH BASE_DIR "${CMAKE_BINARY_DIR}") | ||||||
|  | if (NOT EXISTS ${PICO_SDK_PATH}) | ||||||
|  |     message(FATAL_ERROR "Directory '${PICO_SDK_PATH}' not found") | ||||||
|  | endif () | ||||||
|  | 
 | ||||||
|  | set(PICO_SDK_INIT_CMAKE_FILE ${PICO_SDK_PATH}/pico_sdk_init.cmake) | ||||||
|  | if (NOT EXISTS ${PICO_SDK_INIT_CMAKE_FILE}) | ||||||
|  |     message(FATAL_ERROR "Directory '${PICO_SDK_PATH}' does not appear to contain the Raspberry Pi Pico SDK") | ||||||
|  | endif () | ||||||
|  | 
 | ||||||
|  | set(PICO_SDK_PATH ${PICO_SDK_PATH} CACHE PATH "Path to the Raspberry Pi Pico SDK" FORCE) | ||||||
|  | 
 | ||||||
|  | include(${PICO_SDK_INIT_CMAKE_FILE}) | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user