📄 interrupt_usart.lst
字号:
314:../../include/lib_AT91SAM7S256.h **** __inline int AT91F_PDC_IsNextTxEmpty ( // \return return 1 if transfer is complete
315:../../include/lib_AT91SAM7S256.h **** AT91PS_PDC pPDC ) // \arg pointer to a PDC controller
316:../../include/lib_AT91SAM7S256.h **** {
317:../../include/lib_AT91SAM7S256.h **** return !(pPDC->PDC_TNCR);
318:../../include/lib_AT91SAM7S256.h **** }
319:../../include/lib_AT91SAM7S256.h ****
320:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
321:../../include/lib_AT91SAM7S256.h **** //* \fn AT91F_PDC_IsRxEmpty
322:../../include/lib_AT91SAM7S256.h **** //* \brief Test if the current transfer descriptor has been filled
323:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
324:../../include/lib_AT91SAM7S256.h **** __inline int AT91F_PDC_IsRxEmpty ( // \return return 1 if transfer is complete
325:../../include/lib_AT91SAM7S256.h **** AT91PS_PDC pPDC ) // \arg pointer to a PDC controller
326:../../include/lib_AT91SAM7S256.h **** {
327:../../include/lib_AT91SAM7S256.h **** return !(pPDC->PDC_RCR);
328:../../include/lib_AT91SAM7S256.h **** }
329:../../include/lib_AT91SAM7S256.h ****
330:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
331:../../include/lib_AT91SAM7S256.h **** //* \fn AT91F_PDC_IsNextRxEmpty
332:../../include/lib_AT91SAM7S256.h **** //* \brief Test if the next transfer descriptor has been moved to the current td
333:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
334:../../include/lib_AT91SAM7S256.h **** __inline int AT91F_PDC_IsNextRxEmpty ( // \return return 1 if transfer is complete
335:../../include/lib_AT91SAM7S256.h **** AT91PS_PDC pPDC ) // \arg pointer to a PDC controller
336:../../include/lib_AT91SAM7S256.h **** {
337:../../include/lib_AT91SAM7S256.h **** return !(pPDC->PDC_RNCR);
338:../../include/lib_AT91SAM7S256.h **** }
339:../../include/lib_AT91SAM7S256.h ****
340:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
341:../../include/lib_AT91SAM7S256.h **** //* \fn AT91F_PDC_Open
342:../../include/lib_AT91SAM7S256.h **** //* \brief Open PDC: disable TX and RX reset transfer descriptors, re-enable RX and TX
343:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
344:../../include/lib_AT91SAM7S256.h **** __inline void AT91F_PDC_Open (
345:../../include/lib_AT91SAM7S256.h **** AT91PS_PDC pPDC) // \arg pointer to a PDC controller
346:../../include/lib_AT91SAM7S256.h **** {
347:../../include/lib_AT91SAM7S256.h **** //* Disable the RX and TX PDC transfer requests
348:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_DisableRx(pPDC);
349:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_DisableTx(pPDC);
350:../../include/lib_AT91SAM7S256.h ****
351:../../include/lib_AT91SAM7S256.h **** //* Reset all Counter register Next buffer first
352:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetNextTx(pPDC, (char *) 0, 0);
353:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetNextRx(pPDC, (char *) 0, 0);
354:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetTx(pPDC, (char *) 0, 0);
355:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetRx(pPDC, (char *) 0, 0);
356:../../include/lib_AT91SAM7S256.h ****
357:../../include/lib_AT91SAM7S256.h **** //* Enable the RX and TX PDC transfer requests
358:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_EnableRx(pPDC);
359:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_EnableTx(pPDC);
360:../../include/lib_AT91SAM7S256.h **** }
361:../../include/lib_AT91SAM7S256.h ****
362:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
363:../../include/lib_AT91SAM7S256.h **** //* \fn AT91F_PDC_Close
364:../../include/lib_AT91SAM7S256.h **** //* \brief Close PDC: disable TX and RX reset transfer descriptors
365:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
366:../../include/lib_AT91SAM7S256.h **** __inline void AT91F_PDC_Close (
367:../../include/lib_AT91SAM7S256.h **** AT91PS_PDC pPDC) // \arg pointer to a PDC controller
368:../../include/lib_AT91SAM7S256.h **** {
369:../../include/lib_AT91SAM7S256.h **** //* Disable the RX and TX PDC transfer requests
370:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_DisableRx(pPDC);
371:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_DisableTx(pPDC);
372:../../include/lib_AT91SAM7S256.h ****
373:../../include/lib_AT91SAM7S256.h **** //* Reset all Counter register Next buffer first
374:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetNextTx(pPDC, (char *) 0, 0);
375:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetNextRx(pPDC, (char *) 0, 0);
376:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetTx(pPDC, (char *) 0, 0);
377:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetRx(pPDC, (char *) 0, 0);
378:../../include/lib_AT91SAM7S256.h ****
379:../../include/lib_AT91SAM7S256.h **** }
380:../../include/lib_AT91SAM7S256.h ****
381:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
382:../../include/lib_AT91SAM7S256.h **** //* \fn AT91F_PDC_SendFrame
383:../../include/lib_AT91SAM7S256.h **** //* \brief Close PDC: disable TX and RX reset transfer descriptors
384:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
385:../../include/lib_AT91SAM7S256.h **** __inline unsigned int AT91F_PDC_SendFrame(
386:../../include/lib_AT91SAM7S256.h **** AT91PS_PDC pPDC,
387:../../include/lib_AT91SAM7S256.h **** char *pBuffer,
388:../../include/lib_AT91SAM7S256.h **** unsigned int szBuffer,
389:../../include/lib_AT91SAM7S256.h **** char *pNextBuffer,
390:../../include/lib_AT91SAM7S256.h **** unsigned int szNextBuffer )
391:../../include/lib_AT91SAM7S256.h **** {
392:../../include/lib_AT91SAM7S256.h **** if (AT91F_PDC_IsTxEmpty(pPDC)) {
393:../../include/lib_AT91SAM7S256.h **** //* Buffer and next buffer can be initialized
394:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetTx(pPDC, pBuffer, szBuffer);
395:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetNextTx(pPDC, pNextBuffer, szNextBuffer);
396:../../include/lib_AT91SAM7S256.h **** return 2;
397:../../include/lib_AT91SAM7S256.h **** }
398:../../include/lib_AT91SAM7S256.h **** else if (AT91F_PDC_IsNextTxEmpty(pPDC)) {
399:../../include/lib_AT91SAM7S256.h **** //* Only one buffer can be initialized
400:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetNextTx(pPDC, pBuffer, szBuffer);
401:../../include/lib_AT91SAM7S256.h **** return 1;
402:../../include/lib_AT91SAM7S256.h **** }
403:../../include/lib_AT91SAM7S256.h **** else {
404:../../include/lib_AT91SAM7S256.h **** //* All buffer are in use...
405:../../include/lib_AT91SAM7S256.h **** return 0;
406:../../include/lib_AT91SAM7S256.h **** }
407:../../include/lib_AT91SAM7S256.h **** }
408:../../include/lib_AT91SAM7S256.h ****
409:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
410:../../include/lib_AT91SAM7S256.h **** //* \fn AT91F_PDC_ReceiveFrame
411:../../include/lib_AT91SAM7S256.h **** //* \brief Close PDC: disable TX and RX reset transfer descriptors
412:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
413:../../include/lib_AT91SAM7S256.h **** __inline unsigned int AT91F_PDC_ReceiveFrame (
414:../../include/lib_AT91SAM7S256.h **** AT91PS_PDC pPDC,
415:../../include/lib_AT91SAM7S256.h **** char *pBuffer,
416:../../include/lib_AT91SAM7S256.h **** unsigned int szBuffer,
417:../../include/lib_AT91SAM7S256.h **** char *pNextBuffer,
418:../../include/lib_AT91SAM7S256.h **** unsigned int szNextBuffer )
419:../../include/lib_AT91SAM7S256.h **** {
420:../../include/lib_AT91SAM7S256.h **** if (AT91F_PDC_IsRxEmpty(pPDC)) {
421:../../include/lib_AT91SAM7S256.h **** //* Buffer and next buffer can be initialized
422:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetRx(pPDC, pBuffer, szBuffer);
423:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetNextRx(pPDC, pNextBuffer, szNextBuffer);
424:../../include/lib_AT91SAM7S256.h **** return 2;
425:../../include/lib_AT91SAM7S256.h **** }
426:../../include/lib_AT91SAM7S256.h **** else if (AT91F_PDC_IsNextRxEmpty(pPDC)) {
427:../../include/lib_AT91SAM7S256.h **** //* Only one buffer can be initialized
428:../../include/lib_AT91SAM7S256.h **** AT91F_PDC_SetNextRx(pPDC, pBuffer, szBuffer);
429:../../include/lib_AT91SAM7S256.h **** return 1;
430:../../include/lib_AT91SAM7S256.h **** }
431:../../include/lib_AT91SAM7S256.h **** else {
432:../../include/lib_AT91SAM7S256.h **** //* All buffer are in use...
433:../../include/lib_AT91SAM7S256.h **** return 0;
434:../../include/lib_AT91SAM7S256.h **** }
435:../../include/lib_AT91SAM7S256.h **** }
436:../../include/lib_AT91SAM7S256.h **** /* *****************************************************************************
437:../../include/lib_AT91SAM7S256.h **** SOFTWARE API FOR DBGU
438:../../include/lib_AT91SAM7S256.h **** ***************************************************************************** */
439:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
440:../../include/lib_AT91SAM7S256.h **** //* \fn AT91F_DBGU_InterruptEnable
441:../../include/lib_AT91SAM7S256.h **** //* \brief Enable DBGU Interrupt
442:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
443:../../include/lib_AT91SAM7S256.h **** __inline void AT91F_DBGU_InterruptEnable(
444:../../include/lib_AT91SAM7S256.h **** AT91PS_DBGU pDbgu, // \arg pointer to a DBGU controller
445:../../include/lib_AT91SAM7S256.h **** unsigned int flag) // \arg dbgu interrupt to be enabled
446:../../include/lib_AT91SAM7S256.h **** {
447:../../include/lib_AT91SAM7S256.h **** pDbgu->DBGU_IER = flag;
448:../../include/lib_AT91SAM7S256.h **** }
449:../../include/lib_AT91SAM7S256.h ****
450:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
451:../../include/lib_AT91SAM7S256.h **** //* \fn AT91F_DBGU_InterruptDisable
452:../../include/lib_AT91SAM7S256.h **** //* \brief Disable DBGU Interrupt
453:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
454:../../include/lib_AT91SAM7S256.h **** __inline void AT91F_DBGU_InterruptDisable(
455:../../include/lib_AT91SAM7S256.h **** AT91PS_DBGU pDbgu, // \arg pointer to a DBGU controller
456:../../include/lib_AT91SAM7S256.h **** unsigned int flag) // \arg dbgu interrupt to be disabled
457:../../include/lib_AT91SAM7S256.h **** {
458:../../include/lib_AT91SAM7S256.h **** pDbgu->DBGU_IDR = flag;
459:../../include/lib_AT91SAM7S256.h **** }
460:../../include/lib_AT91SAM7S256.h ****
461:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
462:../../include/lib_AT91SAM7S256.h **** //* \fn AT91F_DBGU_GetInterruptMaskStatus
463:../../include/lib_AT91SAM7S256.h **** //* \brief Return DBGU Interrupt Mask Status
464:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
465:../../include/lib_AT91SAM7S256.h **** __inline unsigned int AT91F_DBGU_GetInterruptMaskStatus( // \return DBGU Interrupt Mask Status
466:../../include/lib_AT91SAM7S256.h **** AT91PS_DBGU pDbgu) // \arg pointer to a DBGU controller
467:../../include/lib_AT91SAM7S256.h **** {
468:../../include/lib_AT91SAM7S256.h **** return pDbgu->DBGU_IMR;
469:../../include/lib_AT91SAM7S256.h **** }
470:../../include/lib_AT91SAM7S256.h ****
471:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
472:../../include/lib_AT91SAM7S256.h **** //* \fn AT91F_DBGU_IsInterruptMasked
473:../../include/lib_AT91SAM7S256.h **** //* \brief Test if DBGU Interrupt is Masked
474:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
475:../../include/lib_AT91SAM7S256.h **** __inline int AT91F_DBGU_IsInterruptMasked(
476:../../include/lib_AT91SAM7S256.h **** AT91PS_DBGU pDbgu, // \arg pointer to a DBGU controller
477:../../include/lib_AT91SAM7S256.h **** unsigned int flag) // \arg flag to be tested
478:../../include/lib_AT91SAM7S256.h **** {
479:../../include/lib_AT91SAM7S256.h **** return (AT91F_DBGU_GetInterruptMaskStatus(pDbgu) & flag);
480:../../include/lib_AT91SAM7S256.h **** }
481:../../include/lib_AT91SAM7S256.h ****
482:../../include/lib_AT91SAM7S256.h **** /* *****************************************************************************
483:../../include/lib_AT91SAM7S256.h **** SOFTWARE API FOR PIO
484:../../include/lib_AT91SAM7S256.h **** ***************************************************************************** */
485:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
486:../../include/lib_AT91SAM7S256.h **** //* \fn AT91F_PIO_CfgPeriph
487:../../include/lib_AT91SAM7S256.h **** //* \brief Enable pins to be drived by peripheral
488:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
489:../../include/lib_AT91SAM7S256.h **** __inline void AT91F_PIO_CfgPeriph(
490:../../include/lib_AT91SAM7S256.h **** AT91PS_PIO pPio, // \arg pointer to a PIO controller
491:../../include/lib_AT91SAM7S256.h **** unsigned int periphAEnable, // \arg PERIPH A to enable
492:../../include/lib_AT91SAM7S256.h **** unsigned int periphBEnable) // \arg PERIPH B to enable
493:../../include/lib_AT91SAM7S256.h ****
494:../../include/lib_AT91SAM7S256.h **** {
495:../../include/lib_AT91SAM7S256.h **** pPio->PIO_ASR = periphAEnable;
496:../../include/lib_AT91SAM7S256.h **** pPio->PIO_BSR = periphBEnable;
497:../../include/lib_AT91SAM7S256.h **** pPio->PIO_PDR = (periphAEnable | periphBEnable); // Set in Periph mode
498:../../include/lib_AT91SAM7S256.h **** }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -