|
【nRF52840 DK测评】+52840的NFC(二)
[复制链接]
把nRF5_SDK_15.2.0_9412b96\examples\nfc\record_text文件夹的工程烧录到52840中,通过nxp的pn532读取:
nfc块的数据如红线所示:为Hello World!
- static ret_code_t welcome_msg_encode(uint8_t * p_buffer, uint32_t * p_len)
- {
- /** @snippet [NFC text usage_2] */
- ret_code_t err_code;
- /* Create NFC NDEF text record description in English */
- NFC_NDEF_TEXT_RECORD_DESC_DEF(nfc_en_text_rec,
- UTF_8,
- en_code,
- sizeof(en_code),
- en_payload,
- sizeof(en_payload));
- /** @snippet [NFC text usage_2] */
- /* Create NFC NDEF text record description in Norwegian */
- NFC_NDEF_TEXT_RECORD_DESC_DEF(nfc_no_text_rec,
- UTF_8,
- no_code,
- sizeof(no_code),
- no_payload,
- sizeof(no_payload));
- /* Create NFC NDEF text record description in Polish */
- NFC_NDEF_TEXT_RECORD_DESC_DEF(nfc_pl_text_rec,
- UTF_8,
- pl_code,
- sizeof(pl_code),
- pl_payload,
- sizeof(pl_payload));
复制代码
从上面的程序只能看出nfc的数据为什么是那样的,那么下面看看是nfc的输出
1这个函数很奇怪,我没看到函数程序在哪,参数也没看到定义,只有下面的这个函数,奇怪的是程序没在主函数看到,却实实在在执行了,看注释是1这一句使它执行的,到现在都没有看懂
- static void nfc_callback(void * p_context, nfc_t2t_event_t event, const uint8_t * p_data, size_t data_length)
- {
- (void)p_context;
- switch (event)
- {
- case NFC_T2T_EVENT_FIELD_ON:
- bsp_board_led_on(BSP_BOARD_LED_0);
- break;
- case NFC_T2T_EVENT_FIELD_OFF:
- bsp_board_led_off(BSP_BOARD_LED_0);
- break;
- default:
- break;
- }
- }
复制代码
这个函数主要作用就是当有nfc数据传输时,点亮了led
2函数就是配置要传到nfc的数据了。
3这个函数很遗憾跳不过去,看不到函数写的是怎样的。从它注释猜是这个函数是把配置整个nfc数据格式的。
4这个函数是使能中断配置的,以来判断nfc是否在传输数据。
|
|