⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.lst

📁 高性能USB转串口(可高达10Mbps)完整的源代码
💻 LST
📖 第 1 页 / 共 5 页
字号:
 266:../../include/lib_AT91SAM7S256.h **** {
 267:../../include/lib_AT91SAM7S256.h **** 	pPDC->PDC_PTCR = AT91C_PDC_TXTEN;
 268:../../include/lib_AT91SAM7S256.h **** }
 269:../../include/lib_AT91SAM7S256.h **** 
 270:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
 271:../../include/lib_AT91SAM7S256.h **** //* \fn    AT91F_PDC_EnableRx
 272:../../include/lib_AT91SAM7S256.h **** //* \brief Enable receive
 273:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
 274:../../include/lib_AT91SAM7S256.h **** __inline void AT91F_PDC_EnableRx (
 275:../../include/lib_AT91SAM7S256.h **** 	AT91PS_PDC pPDC )       // \arg pointer to a PDC controller
 276:../../include/lib_AT91SAM7S256.h **** {
 277:../../include/lib_AT91SAM7S256.h **** 	pPDC->PDC_PTCR = AT91C_PDC_RXTEN;
 278:../../include/lib_AT91SAM7S256.h **** }
 279:../../include/lib_AT91SAM7S256.h **** 
 280:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
 281:../../include/lib_AT91SAM7S256.h **** //* \fn    AT91F_PDC_DisableTx
 282:../../include/lib_AT91SAM7S256.h **** //* \brief Disable transmit
 283:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
 284:../../include/lib_AT91SAM7S256.h **** __inline void AT91F_PDC_DisableTx (
 285:../../include/lib_AT91SAM7S256.h **** 	AT91PS_PDC pPDC )       // \arg pointer to a PDC controller
 286:../../include/lib_AT91SAM7S256.h **** {
 287:../../include/lib_AT91SAM7S256.h **** 	pPDC->PDC_PTCR = AT91C_PDC_TXTDIS;
 288:../../include/lib_AT91SAM7S256.h **** }
 289:../../include/lib_AT91SAM7S256.h **** 
 290:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
 291:../../include/lib_AT91SAM7S256.h **** //* \fn    AT91F_PDC_DisableRx
 292:../../include/lib_AT91SAM7S256.h **** //* \brief Disable receive
 293:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
 294:../../include/lib_AT91SAM7S256.h **** __inline void AT91F_PDC_DisableRx (
 295:../../include/lib_AT91SAM7S256.h **** 	AT91PS_PDC pPDC )       // \arg pointer to a PDC controller
 296:../../include/lib_AT91SAM7S256.h **** {
 297:../../include/lib_AT91SAM7S256.h **** 	pPDC->PDC_PTCR = AT91C_PDC_RXTDIS;
 298:../../include/lib_AT91SAM7S256.h **** }
 299:../../include/lib_AT91SAM7S256.h **** 
 300:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
 301:../../include/lib_AT91SAM7S256.h **** //* \fn    AT91F_PDC_IsTxEmpty
 302:../../include/lib_AT91SAM7S256.h **** //* \brief Test if the current transfer descriptor has been sent
 303:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
 304:../../include/lib_AT91SAM7S256.h **** __inline int AT91F_PDC_IsTxEmpty ( // \return return 1 if transfer is complete
 305:../../include/lib_AT91SAM7S256.h **** 	AT91PS_PDC pPDC )       // \arg pointer to a PDC controller
 306:../../include/lib_AT91SAM7S256.h **** {
 307:../../include/lib_AT91SAM7S256.h **** 	return !(pPDC->PDC_TCR);
 308:../../include/lib_AT91SAM7S256.h **** }
 309:../../include/lib_AT91SAM7S256.h **** 
 310:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
 311:../../include/lib_AT91SAM7S256.h **** //* \fn    AT91F_PDC_IsNextTxEmpty
 312:../../include/lib_AT91SAM7S256.h **** //* \brief Test if the next transfer descriptor has been moved to the current td
 313:../../include/lib_AT91SAM7S256.h **** //*----------------------------------------------------------------------------
 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 **** 	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -